From 4eebac2d5af423b9d6d1e74afb6d269733a9f337 Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Mon, 26 Feb 2024 14:29:56 +0100 Subject: [PATCH] [bitnami/opensearch-dashboards] Release 1.3.14-debian-12-r9 (#63396) Signed-off-by: Bitnami Containers --- .../1/debian-12/Dockerfile | 6 +-- .../opt/bitnami/.bitnami_components.json | 2 +- .../scripts/opensearch-dashboards-env.sh | 4 ++ .../opensearch-dashboards/entrypoint.sh | 19 +++++++++ .../opensearch-dashboards/postunpack.sh | 17 +++++++- bitnami/opensearch-dashboards/README.md | 40 ++++++++++--------- 6 files changed, 64 insertions(+), 24 deletions(-) diff --git a/bitnami/opensearch-dashboards/1/debian-12/Dockerfile b/bitnami/opensearch-dashboards/1/debian-12/Dockerfile index 0e870fa0d986..5315936e92b5 100644 --- a/bitnami/opensearch-dashboards/1/debian-12/Dockerfile +++ b/bitnami/opensearch-dashboards/1/debian-12/Dockerfile @@ -7,10 +7,10 @@ ARG TARGETARCH LABEL com.vmware.cp.artifact.flavor="sha256:c50c90cfd9d12b445b011e6ad529f1ad3daea45c26d20b00732fae3cd71f6a83" \ org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \ - org.opencontainers.image.created="2024-02-21T12:48:30Z" \ + org.opencontainers.image.created="2024-02-26T12:30:40Z" \ org.opencontainers.image.description="Application packaged by VMware, Inc" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="1.3.14-debian-12-r8" \ + org.opencontainers.image.ref.name="1.3.14-debian-12-r9" \ org.opencontainers.image.title="opensearch-dashboards" \ org.opencontainers.image.vendor="VMware, Inc." \ org.opencontainers.image.version="1.3.14" @@ -27,7 +27,7 @@ SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"] RUN install_packages ca-certificates curl libgcc-s1 libstdc++6 procps RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ ; \ COMPONENTS=( \ - "yq-4.41.1-0-linux-${OS_ARCH}-debian-12" \ + "yq-4.42.1-0-linux-${OS_ARCH}-debian-12" \ "opensearch-dashboards-1.3.14-2-linux-${OS_ARCH}-debian-12" \ ) ; \ for COMPONENT in "${COMPONENTS[@]}"; do \ diff --git a/bitnami/opensearch-dashboards/1/debian-12/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/opensearch-dashboards/1/debian-12/prebuildfs/opt/bitnami/.bitnami_components.json index 1e68e29e031f..ee9bf5be58ca 100644 --- a/bitnami/opensearch-dashboards/1/debian-12/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/opensearch-dashboards/1/debian-12/prebuildfs/opt/bitnami/.bitnami_components.json @@ -9,6 +9,6 @@ "arch": "amd64", "distro": "debian-12", "type": "NAMI", - "version": "4.41.1-0" + "version": "4.42.1-0" } } \ No newline at end of file diff --git a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards-env.sh b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards-env.sh index 2b75ea583e98..f529051d4321 100644 --- a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards-env.sh +++ b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards-env.sh @@ -75,6 +75,8 @@ export OPENSEARCH_DASHBOARDS_BASE_DIR="${BITNAMI_ROOT_DIR}/opensearch-dashboards export SERVER_BASE_DIR="$OPENSEARCH_DASHBOARDS_BASE_DIR" export OPENSEARCH_DASHBOARDS_CONF_DIR="${SERVER_BASE_DIR}/config" export SERVER_CONF_DIR="$OPENSEARCH_DASHBOARDS_CONF_DIR" +export OPENSEARCH_DASHBOARDS_DEFAULT_CONF_DIR="${SERVER_BASE_DIR}/config.default" +export SERVER_DEFAULT_CONF_DIR="$OPENSEARCH_DASHBOARDS_DEFAULT_CONF_DIR" export OPENSEARCH_DASHBOARDS_LOGS_DIR="${SERVER_BASE_DIR}/logs" export SERVER_LOGS_DIR="$OPENSEARCH_DASHBOARDS_LOGS_DIR" export OPENSEARCH_DASHBOARDS_TMP_DIR="${SERVER_BASE_DIR}/tmp" @@ -83,6 +85,8 @@ export OPENSEARCH_DASHBOARDS_BIN_DIR="${SERVER_BASE_DIR}/bin" export SERVER_BIN_DIR="$OPENSEARCH_DASHBOARDS_BIN_DIR" export OPENSEARCH_DASHBOARDS_PLUGINS_DIR="${SERVER_BASE_DIR}/plugins" export SERVER_PLUGINS_DIR="$OPENSEARCH_DASHBOARDS_PLUGINS_DIR" +export OPENSEARCH_DASHBOARDS_DEFAULT_PLUGINS_DIR="${SERVER_BASE_DIR}/plugins.default" +export SERVER_DEFAULT_PLUGINS_DIR="$OPENSEARCH_DASHBOARDS_DEFAULT_PLUGINS_DIR" export OPENSEARCH_DASHBOARDS_DATA_DIR="${SERVER_VOLUME_DIR}/data" export SERVER_DATA_DIR="$OPENSEARCH_DASHBOARDS_DATA_DIR" export OPENSEARCH_DASHBOARDS_MOUNTED_CONF_DIR="${SERVER_VOLUME_DIR}/conf" diff --git a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/entrypoint.sh b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/entrypoint.sh index 18b82a0f89d7..1384ce21fb90 100755 --- a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/entrypoint.sh +++ b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/entrypoint.sh @@ -19,6 +19,25 @@ set -o pipefail print_welcome_page +# We add the copy from default config in the entrypoint to not break users +# bypassing the setup.sh logic. If the file already exists do not overwrite (in +# case someone mounts a configuration file in /opt/bitnami/elasticsearch/conf) +debug "Copying files from $SERVER_DEFAULT_CONF_DIR to $SERVER_CONF_DIR" +cp -nr "$SERVER_DEFAULT_CONF_DIR"/. "$SERVER_CONF_DIR" + +if ! is_dir_empty "$SERVER_DEFAULT_PLUGINS_DIR"; then + debug "Copying plugins from $SERVER_DEFAULT_PLUGINS_DIR to $SERVER_PLUGINS_DIR" + # Copy the plugins installed by default to the plugins directory + # If there is already a plugin with the same name in the plugins folder do nothing + for plugin_path in "${SERVER_DEFAULT_PLUGINS_DIR}"/*; do + plugin_name="$(basename "$plugin_path")" + plugin_moved_path="${SERVER_PLUGINS_DIR}/${plugin_name}" + if ! [[ -d "$plugin_moved_path" ]]; then + cp -r "$plugin_path" "$plugin_moved_path" + fi + done +fi + if [[ "$1" = "/opt/bitnami/scripts/opensearch-dashboards/run.sh" ]]; then info "** Starting Opensearch Dashboards setup **" /opt/bitnami/scripts/opensearch-dashboards/setup.sh diff --git a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/postunpack.sh b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/postunpack.sh index 4def0f9e5401..e94453a5c79b 100755 --- a/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/postunpack.sh +++ b/bitnami/opensearch-dashboards/1/debian-12/rootfs/opt/bitnami/scripts/opensearch-dashboards/postunpack.sh @@ -16,7 +16,7 @@ set -o pipefail # Load environment . /opt/bitnami/scripts/opensearch-dashboards-env.sh -for dir in "$SERVER_TMP_DIR" "$SERVER_LOGS_DIR" "$SERVER_CONF_DIR" "$SERVER_PLUGINS_DIR" "$SERVER_VOLUME_DIR" "$SERVER_DATA_DIR" "$SERVER_INITSCRIPTS_DIR"; do +for dir in "$SERVER_TMP_DIR" "$SERVER_LOGS_DIR" "$SERVER_CONF_DIR" "$SERVER_DEFAULT_CONF_DIR" "$SERVER_PLUGINS_DIR" "$SERVER_DEFAULT_PLUGINS_DIR" "$SERVER_VOLUME_DIR" "$SERVER_DATA_DIR" "$SERVER_INITSCRIPTS_DIR"; do ensure_dir_exists "$dir" chmod -R ug+rwX "$dir" done @@ -24,3 +24,18 @@ done kibana_conf_set "path.data" "$SERVER_DATA_DIR" # For backwards compatibility, create a symlink to the default path ! is_dir_empty "${SERVER_BASE_DIR}/data" || rm -rf "${SERVER_BASE_DIR}/data" && ln -s "$SERVER_DATA_DIR" "${SERVER_BASE_DIR}/data" + +# Copy all initially generated configuration files to the default directory +# (this is to avoid breaking when entrypoint is being overridden) +cp -r "${SERVER_CONF_DIR}/"* "$SERVER_DEFAULT_CONF_DIR" +chmod o+rX -R "$SERVER_DEFAULT_CONF_DIR" + +if ! is_dir_empty "$SERVER_PLUGINS_DIR"; then + # Move all initially installed plugins to the default plugins directory. + for plugin_path in "${SERVER_PLUGINS_DIR}"/*; do + plugin_name="$(basename "$plugin_path")" + plugin_moved_path="${SERVER_DEFAULT_PLUGINS_DIR}/${plugin_name}" + mv "$plugin_path" "$plugin_moved_path" + done + chmod o+rX -R "$SERVER_DEFAULT_PLUGINS_DIR" +fi diff --git a/bitnami/opensearch-dashboards/README.md b/bitnami/opensearch-dashboards/README.md index 706b86ffd95f..536592a6cb9f 100644 --- a/bitnami/opensearch-dashboards/README.md +++ b/bitnami/opensearch-dashboards/README.md @@ -113,25 +113,27 @@ docker run --name opensearch-dashboards bitnami/opensearch-dashboards:latest #### Read-only environment variables -| Name | Description | Value | -|------------------------------------------|-----------------------------------------------------------------------------------------------|------------------------------------------------| -| `SERVER_FLAVOR` | Server flavor. Valid values: `kibana` or `opensearch-dashboards`. | `opensearch-dashboards` | -| `BITNAMI_VOLUME_DIR` | Directory where to mount volumes | `/bitnami` | -| `OPENSEARCH_DASHBOARDS_VOLUME_DIR` | Opensearch Dashboards persistence directory | `${BITNAMI_VOLUME_DIR}/opensearch-dashboards` | -| `OPENSEARCH_DASHBOARDS_BASE_DIR` | Opensearch Dashboards installation directory | `${BITNAMI_ROOT_DIR}/opensearch-dashboards` | -| `OPENSEARCH_DASHBOARDS_CONF_DIR` | Opensearch Dashboards configuration directory | `${SERVER_BASE_DIR}/config` | -| `OPENSEARCH_DASHBOARDS_LOGS_DIR` | Opensearch Dashboards logs directory | `${SERVER_BASE_DIR}/logs` | -| `OPENSEARCH_DASHBOARDS_TMP_DIR` | Opensearch Dashboards temporary directory | `${SERVER_BASE_DIR}/tmp` | -| `OPENSEARCH_DASHBOARDS_BIN_DIR` | Opensearch Dashboards executable directory | `${SERVER_BASE_DIR}/bin` | -| `OPENSEARCH_DASHBOARDS_PLUGINS_DIR` | Opensearch Dashboards plugins directory | `${SERVER_BASE_DIR}/plugins` | -| `OPENSEARCH_DASHBOARDS_DATA_DIR` | Opensearch Dashboards data directory | `${SERVER_VOLUME_DIR}/data` | -| `OPENSEARCH_DASHBOARDS_MOUNTED_CONF_DIR` | Directory for including custom configuration files (that override the default generated ones) | `${SERVER_VOLUME_DIR}/conf` | -| `OPENSEARCH_DASHBOARDS_CONF_FILE` | Path to Opensearch Dashboards configuration file | `${SERVER_CONF_DIR}/opensearch_dashboards.yml` | -| `OPENSEARCH_DASHBOARDS_LOG_FILE` | Path to the Opensearch Dashboards log file | `${SERVER_LOGS_DIR}/opensearch-dashboards.log` | -| `OPENSEARCH_DASHBOARDS_PID_FILE` | Path to the Opensearch Dashboards pid file | `${SERVER_TMP_DIR}/opensearch-dashboards.pid` | -| `OPENSEARCH_DASHBOARDS_INITSCRIPTS_DIR` | Path to the Opensearch Dashboards container init scripts directory | `/docker-entrypoint-initdb.d` | -| `OPENSEARCH_DASHBOARDS_DAEMON_USER` | Opensearch Dashboards system user | `opensearch-dashboards` | -| `OPENSEARCH_DASHBOARDS_DAEMON_GROUP` | Opensearch Dashboards system group | `opensearch-dashboards` | +| Name | Description | Value | +|---------------------------------------------|-----------------------------------------------------------------------------------------------|------------------------------------------------| +| `SERVER_FLAVOR` | Server flavor. Valid values: `kibana` or `opensearch-dashboards`. | `opensearch-dashboards` | +| `BITNAMI_VOLUME_DIR` | Directory where to mount volumes | `/bitnami` | +| `OPENSEARCH_DASHBOARDS_VOLUME_DIR` | Opensearch Dashboards persistence directory | `${BITNAMI_VOLUME_DIR}/opensearch-dashboards` | +| `OPENSEARCH_DASHBOARDS_BASE_DIR` | Opensearch Dashboards installation directory | `${BITNAMI_ROOT_DIR}/opensearch-dashboards` | +| `OPENSEARCH_DASHBOARDS_CONF_DIR` | Opensearch Dashboards configuration directory | `${SERVER_BASE_DIR}/config` | +| `OPENSEARCH_DASHBOARDS_DEFAULT_CONF_DIR` | Opensearch Dashboards default configuration directory | `${SERVER_BASE_DIR}/config.default` | +| `OPENSEARCH_DASHBOARDS_LOGS_DIR` | Opensearch Dashboards logs directory | `${SERVER_BASE_DIR}/logs` | +| `OPENSEARCH_DASHBOARDS_TMP_DIR` | Opensearch Dashboards temporary directory | `${SERVER_BASE_DIR}/tmp` | +| `OPENSEARCH_DASHBOARDS_BIN_DIR` | Opensearch Dashboards executable directory | `${SERVER_BASE_DIR}/bin` | +| `OPENSEARCH_DASHBOARDS_PLUGINS_DIR` | Opensearch Dashboards plugins directory | `${SERVER_BASE_DIR}/plugins` | +| `OPENSEARCH_DASHBOARDS_DEFAULT_PLUGINS_DIR` | Opensearch Dashboards default plugins directory | `${SERVER_BASE_DIR}/plugins.default` | +| `OPENSEARCH_DASHBOARDS_DATA_DIR` | Opensearch Dashboards data directory | `${SERVER_VOLUME_DIR}/data` | +| `OPENSEARCH_DASHBOARDS_MOUNTED_CONF_DIR` | Directory for including custom configuration files (that override the default generated ones) | `${SERVER_VOLUME_DIR}/conf` | +| `OPENSEARCH_DASHBOARDS_CONF_FILE` | Path to Opensearch Dashboards configuration file | `${SERVER_CONF_DIR}/opensearch_dashboards.yml` | +| `OPENSEARCH_DASHBOARDS_LOG_FILE` | Path to the Opensearch Dashboards log file | `${SERVER_LOGS_DIR}/opensearch-dashboards.log` | +| `OPENSEARCH_DASHBOARDS_PID_FILE` | Path to the Opensearch Dashboards pid file | `${SERVER_TMP_DIR}/opensearch-dashboards.pid` | +| `OPENSEARCH_DASHBOARDS_INITSCRIPTS_DIR` | Path to the Opensearch Dashboards container init scripts directory | `/docker-entrypoint-initdb.d` | +| `OPENSEARCH_DASHBOARDS_DAEMON_USER` | Opensearch Dashboards system user | `opensearch-dashboards` | +| `OPENSEARCH_DASHBOARDS_DAEMON_GROUP` | Opensearch Dashboards system group | `opensearch-dashboards` | ### Running commands