From 50edafd59178b364e9aba8b7d536265c3e927b80 Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Wed, 27 May 2026 11:08:28 +0200 Subject: [PATCH] [bitnami/parse] Release 9.9.0-debian-12-r4 (#94014) Signed-off-by: Bitnami Bot --- bitnami/parse/9/debian-12/Dockerfile | 12 +++--- bitnami/parse/9/debian-12/docker-compose.yml | 1 + ....8.3-0-linux-amd64-debian-12.tar.gz.sha256 | 1 + ....8.3-0-linux-arm64-debian-12.tar.gz.sha256 | 1 + ...16.0-0-linux-amd64-debian-12.tar.gz.sha256 | 1 + ...16.0-0-linux-arm64-debian-12.tar.gz.sha256 | 1 + ....9.0-0-linux-amd64-debian-12.tar.gz.sha256 | 1 + ....9.0-0-linux-arm64-debian-12.tar.gz.sha256 | 1 + ...14.5-2-linux-amd64-debian-12.tar.gz.sha256 | 1 + ...14.5-2-linux-arm64-debian-12.tar.gz.sha256 | 1 + .../prebuildfs/opt/bitnami/scripts/libfile.sh | 37 +++++++++++++++++++ .../opt/bitnami/scripts/libmongodbshell.sh | 10 ++++- .../rootfs/opt/bitnami/scripts/libparse.sh | 5 ++- .../bitnami/scripts/mongodb-shell/setup.sh | 2 + .../rootfs/opt/bitnami/scripts/parse-env.sh | 2 +- .../rootfs/opt/bitnami/scripts/parse/setup.sh | 2 + bitnami/parse/README.md | 2 +- bitnami/parse/docker-compose.yml | 1 + 18 files changed, 71 insertions(+), 11 deletions(-) create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-amd64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-arm64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-amd64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-arm64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-amd64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-arm64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-amd64-debian-12.tar.gz.sha256 create mode 100644 bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-arm64-debian-12.tar.gz.sha256 diff --git a/bitnami/parse/9/debian-12/Dockerfile b/bitnami/parse/9/debian-12/Dockerfile index 33c3712a2eee..85a35c908c18 100644 --- a/bitnami/parse/9/debian-12/Dockerfile +++ b/bitnami/parse/9/debian-12/Dockerfile @@ -7,7 +7,7 @@ ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith" ARG TARGETARCH LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \ - org.opencontainers.image.created="2026-05-23T10:13:20Z" \ + org.opencontainers.image.created="2026-05-27T08:45:41Z" \ org.opencontainers.image.description="Application packaged by Broadcom, Inc." \ org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/parse/README.md" \ org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/parse" \ @@ -36,12 +36,12 @@ RUN --mount=type=secret,id=downloads_url,env=SECRET_DOWNLOADS_URL \ for COMPONENT in "${COMPONENTS[@]}"; do \ if [ ! -f "${COMPONENT}.tar.gz" ]; then \ curl -SsLf "https://${DOWNLOADS_URL}/${COMPONENT}.tar.gz" -O ; \ - curl -SsLf "https://${DOWNLOADS_URL}/${COMPONENT}.tar.gz.sha256" -O ; \ fi ; \ - sha256sum -c "${COMPONENT}.tar.gz.sha256" ; \ + sha256sum -c "/opt/bitnami/checksums/${COMPONENT}.tar.gz.sha256" ; \ tar -zxf "${COMPONENT}.tar.gz" -C /opt/bitnami --strip-components=2 --no-same-owner ; \ - rm -rf "${COMPONENT}".tar.gz{,.sha256} ; \ - done + rm -rf "${COMPONENT}".tar.gz ; \ + done ; \ + rm -rf /opt/bitnami/checksums ; RUN apt-get update && apt-get upgrade -y && \ apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives RUN chmod g+rwX /opt/bitnami @@ -52,7 +52,7 @@ COPY rootfs / RUN /opt/bitnami/scripts/parse/postunpack.sh ENV APP_VERSION="9.9.0" \ BITNAMI_APP_NAME="parse" \ - IMAGE_REVISION="3" \ + IMAGE_REVISION="4" \ PATH="/opt/bitnami/python/bin:/opt/bitnami/node/bin:/opt/bitnami/mongodb/bin:/opt/bitnami/parse/bin:$PATH" EXPOSE 1337 3000 diff --git a/bitnami/parse/9/debian-12/docker-compose.yml b/bitnami/parse/9/debian-12/docker-compose.yml index acaf24adf62a..dd8605cac70e 100644 --- a/bitnami/parse/9/debian-12/docker-compose.yml +++ b/bitnami/parse/9/debian-12/docker-compose.yml @@ -20,6 +20,7 @@ services: depends_on: - mongodb environment: + - PARSE_MASTER_KEY=mymasterKey - PARSE_DATABASE_HOST=mongodb - PARSE_DATABASE_PORT_NUMBER=27017 - PARSE_DATABASE_USER=bn_parse diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-amd64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-amd64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..a08b51656660 --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-amd64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +8143bfe5292ed5e3a48e7558eb7a7b39d58d9945c2287cf44625ccf45df173da mongodb-shell-2.8.3-0-linux-amd64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-arm64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-arm64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..53dedf41c5ec --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/mongodb-shell-2.8.3-0-linux-arm64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +bad32aa7e1b11cc56a3b7dfb131598d8b3f1aa0f5d09b6e174fd8a1c931e1916 mongodb-shell-2.8.3-0-linux-arm64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-amd64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-amd64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..ecb766794a2a --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-amd64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +eda15cc265f7b8bd15e639bb1432b52c3d014a822cf00b7e1d646020c5a09957 node-24.16.0-0-linux-amd64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-arm64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-arm64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..bf42d05f0668 --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/node-24.16.0-0-linux-arm64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +94604e808d5f78d44320a904f2fbbdd0d1cb46d6b21c0af0106006a1b233181a node-24.16.0-0-linux-arm64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-amd64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-amd64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..40e4c91cdf01 --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-amd64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +164b210eb02d5eec85cde6519e515585e0ac0efd92d526c5faac4e273d371515 parse-9.9.0-0-linux-amd64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-arm64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-arm64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..b57bb9d27e51 --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/parse-9.9.0-0-linux-arm64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +dccc3e4010733f3f748ec20254ec07b6fcb922ea3e981829d32ee9e29eccf6de parse-9.9.0-0-linux-arm64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-amd64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-amd64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..5a6ff85bb43e --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-amd64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +873f755a79e805bb950da235f991af2edbe89c23dad4b13cd33b089e4f1b7ff6 python-3.14.5-2-linux-amd64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-arm64-debian-12.tar.gz.sha256 b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-arm64-debian-12.tar.gz.sha256 new file mode 100644 index 000000000000..6c3f3de285fd --- /dev/null +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/checksums/python-3.14.5-2-linux-arm64-debian-12.tar.gz.sha256 @@ -0,0 +1 @@ +be023b204af7213748a2bae639e1eec89ce42238b376d68d6262ad364f49c1d3 python-3.14.5-2-linux-arm64-debian-12.tar.gz diff --git a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/scripts/libfile.sh b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/scripts/libfile.sh index 1c69e0e48a5d..335c1c7c9ef7 100644 --- a/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/scripts/libfile.sh +++ b/bitnami/parse/9/debian-12/prebuildfs/opt/bitnami/scripts/libfile.sh @@ -139,3 +139,40 @@ wait_for_log_entry() { return 1 fi } + +######################## +# Creates a secure temporary file containing the provided secret +# Arguments: +# $1 - secret to write to the temporary file +# Returns: +# String +######################### +credential_to_temp_file() { + local secret="$1" + local tmp_file + + # Use mktemp with a specific prefix for easier debugging if something lingers + if ! tmp_file=$(mktemp "${TMPDIR:-/tmp}/at.cred.XXXXXXXX"); then + echo "Error: Failed to create temp file" >&2 + return 1 + fi + + # Restrict permissions before writing the secret + chmod 0600 "$tmp_file" + # Write secret and ensure it's flushed to disk + printf "%s" "$secret" > "$tmp_file" + # Output the filename so the caller can capture it + echo "$tmp_file" +} + +######################## +# Cleans up temporary files created by credential_to_temp_file +# Arguments: +# None +# Returns: +# None +######################### +cleanup_credentials() { + debug "Cleaning up temporary files containing credentials" + rm -rf "${TMPDIR:-/tmp}"/at.cred.* +} diff --git a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libmongodbshell.sh b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libmongodbshell.sh index 77ea0638f24c..23fe50973b46 100644 --- a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libmongodbshell.sh +++ b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libmongodbshell.sh @@ -7,6 +7,7 @@ # shellcheck disable=SC1091 # Load Generic Libraries +. /opt/bitnami/scripts/libfile.sh . /opt/bitnami/scripts/liblog.sh . /opt/bitnami/scripts/libos.sh . /opt/bitnami/scripts/libvalidations.sh @@ -128,7 +129,12 @@ mongodb_execute() { local -a args=("--host" "$host" "--port" "$port") [[ -n "$final_user" ]] && args+=("-u" "$final_user") - [[ -n "$password" ]] && args+=("-p" "$password") + # Avoid passing credentials as arguments to mongosh, to avoid leaking them given a local observer with /proc read access can read them + if [[ -n "$password" ]]; then + local pass_file + pass_file="$(credential_to_temp_file "$password")" + args+=("-p" "$(<"$pass_file")") + fi if [[ -n "$extra_args" ]]; then local extra_args_array=() read -r -a extra_args_array <<<"$extra_args" @@ -136,5 +142,5 @@ mongodb_execute() { fi [[ -n "$database" ]] && args+=("$database") - "$MONGODB_BIN_DIR/mongosh" "${args[@]}" + "${MONGODB_BIN_DIR}/mongosh" "${args[@]}" } diff --git a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libparse.sh b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libparse.sh index 855f079a4148..7326f15d94e0 100644 --- a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libparse.sh +++ b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/libparse.sh @@ -7,6 +7,7 @@ # shellcheck disable=SC1091 # Load generic libraries +. /opt/bitnami/scripts/libfile.sh . /opt/bitnami/scripts/libfs.sh . /opt/bitnami/scripts/libos.sh . /opt/bitnami/scripts/libnet.sh @@ -199,8 +200,10 @@ parse_conf_get() { ######################### parse_wait_for_mongodb_connection() { local -r connection_string="${1:?missing connection string}" + local connection_string_file + connection_string_file="$(credential_to_temp_file "$connection_string")" check_mongodb_connection() { - local -r mongo_args=("$connection_string" "--eval" "db.stats()") + local -r mongo_args=("$(<"$connection_string_file")" "--eval" "db.stats()") local -r res=$(mongosh "${mongo_args[@]}") debug "$res" echo "$res" | grep -q 'ok: 1' diff --git a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/mongodb-shell/setup.sh b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/mongodb-shell/setup.sh index 9ac77785f2b0..2fed7eedb70b 100755 --- a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/mongodb-shell/setup.sh +++ b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/mongodb-shell/setup.sh @@ -17,5 +17,7 @@ set -o pipefail # Ensure MongoDB Shell environment variables settings are valid mongodb_shell_validate +# Ensure we clean up temporary files +trap "cleanup_credentials" EXIT # Ensure MongoDB Shell is initialized mongodb_shell_initialize diff --git a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse-env.sh b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse-env.sh index fc8a0f0f3038..639ba682d4c6 100644 --- a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse-env.sh +++ b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse-env.sh @@ -84,7 +84,7 @@ export PARSE_BIND_HOST="${PARSE_BIND_HOST:-0.0.0.0}" export PARSE_HOST="${PARSE_HOST:-127.0.0.1}" export PARSE_PORT_NUMBER="${PARSE_PORT_NUMBER:-1337}" export PARSE_APP_ID="${PARSE_APP_ID:-myappID}" -export PARSE_MASTER_KEY="${PARSE_MASTER_KEY:-mymasterKey}" +export PARSE_MASTER_KEY="${PARSE_MASTER_KEY:-}" export PARSE_APP_NAME="${PARSE_APP_NAME:-parse-server}" export PARSE_MOUNT_PATH="${PARSE_MOUNT_PATH:-/parse}" export PARSE_ENABLE_CLOUD_CODE="${PARSE_ENABLE_CLOUD_CODE:-no}" diff --git a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse/setup.sh b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse/setup.sh index fd99e5dbe08d..ae146687b9eb 100755 --- a/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse/setup.sh +++ b/bitnami/parse/9/debian-12/rootfs/opt/bitnami/scripts/parse/setup.sh @@ -25,5 +25,7 @@ fi # Ensure Parse environment variables are valid parse_validate +# Ensure we clean up temporary files +trap "cleanup_credentials" EXIT # Ensure Parse is initialized parse_initialize diff --git a/bitnami/parse/README.md b/bitnami/parse/README.md index f7095ac6ebbf..b08dc9c88ec5 100644 --- a/bitnami/parse/README.md +++ b/bitnami/parse/README.md @@ -88,7 +88,7 @@ The following tables list the main variables you can set. | `PARSE_HOST` | Parse host. | `127.0.0.1` | | `PARSE_PORT_NUMBER` | Port number in which Parse will run. | `1337` | | `PARSE_APP_ID` | Parse app ID. | `myappID` | -| `PARSE_MASTER_KEY` | Parse master key. | `mymasterKey` | +| `PARSE_MASTER_KEY` | Parse master key. | `nil` | | `PARSE_APP_NAME` | Parse app name. | `parse-server` | | `PARSE_MOUNT_PATH` | Parse mount path. | `/parse` | | `PARSE_ENABLE_CLOUD_CODE` | Enable Parse cloud code support. | `no` | diff --git a/bitnami/parse/docker-compose.yml b/bitnami/parse/docker-compose.yml index acaf24adf62a..dd8605cac70e 100644 --- a/bitnami/parse/docker-compose.yml +++ b/bitnami/parse/docker-compose.yml @@ -20,6 +20,7 @@ services: depends_on: - mongodb environment: + - PARSE_MASTER_KEY=mymasterKey - PARSE_DATABASE_HOST=mongodb - PARSE_DATABASE_PORT_NUMBER=27017 - PARSE_DATABASE_USER=bn_parse