diff --git a/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/libspark.sh b/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/libspark.sh index 4f40a203c2c1..840effb7a1fb 100644 --- a/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/libspark.sh +++ b/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/libspark.sh @@ -64,6 +64,9 @@ export SPARK_METRICS_ENABLED="${SPARK_METRICS_ENABLED:-false}" # System Users export SPARK_DAEMON_USER="spark" export SPARK_DAEMON_GROUP="spark" + +# Paths +export SPARK_INITSCRIPTS_DIR="/docker-entrypoint-initdb.d" EOF } @@ -356,3 +359,39 @@ spark_initialize() { info "Detected mounted configuration file..." fi } + +######################## +# Run custom initialization scripts +# Globals: +# SPARK_* +# Arguments: +# None +# Returns: +# None +######################### +spark_custom_init_scripts() { + if [[ -n $(find "${SPARK_INITSCRIPTS_DIR}/" -type f -regex ".*\.sh") ]]; then + info "Loading user's custom files from $SPARK_INITSCRIPTS_DIR ..." + local -r tmp_file="/tmp/filelist" + find "${SPARK_INITSCRIPTS_DIR}/" -type f -regex ".*\.sh" | sort >"$tmp_file" + while read -r f; do + case "$f" in + *.sh) + if [[ -x "$f" ]]; then + debug "Executing $f" + "$f" + else + debug "Sourcing $f" + . "$f" + fi + ;; + *) + debug "Ignoring $f" + ;; + esac + done <$tmp_file + rm -f "$tmp_file" + else + info "No custom scripts in $SPARK_INITSCRIPTS_DIR" + fi +} diff --git a/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/spark/setup.sh b/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/spark/setup.sh index f81d8937389d..cc67f6a7b420 100755 --- a/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/spark/setup.sh +++ b/bitnami/spark/3.1/debian-11/rootfs/opt/bitnami/scripts/spark/setup.sh @@ -23,3 +23,6 @@ am_i_root && ensure_user_exists "$SPARK_DAEMON_USER" --group "$SPARK_DAEMON_GROU # Ensure Spark is initialized spark_initialize + +# Run custom initialization scripts +spark_custom_init_scripts \ No newline at end of file diff --git a/bitnami/spark/README.md b/bitnami/spark/README.md index 8f61b56778ac..230e9488e5b8 100644 --- a/bitnami/spark/README.md +++ b/bitnami/spark/README.md @@ -45,7 +45,7 @@ Learn more about the Bitnami tagging policy and the difference between rolling t * [`3.3`, `3.3-debian-11`, `3.3.0`, `3.3.0-debian-11-r10`, `latest` (3.3/debian-11/Dockerfile)](https://github.com/bitnami/bitnami-docker-spark/blob/3.3.0-debian-11-r10/3.3/debian-11/Dockerfile) * [`3.2`, `3.2-debian-11`, `3.2.2`, `3.2.2-debian-11-r2` (3.2/debian-11/Dockerfile)](https://github.com/bitnami/bitnami-docker-spark/blob/3.2.2-debian-11-r2/3.2/debian-11/Dockerfile) -* [`3.1`, `3.1-debian-11`, `3.1.3`, `3.1.3-debian-11-r15` (3.1/debian-11/Dockerfile)](https://github.com/bitnami/bitnami-docker-spark/blob/3.1.3-debian-11-r15/3.1/debian-11/Dockerfile) +* [`3.1`, `3.1-debian-11`, `3.1.3`, `3.1.3-debian-11-r16` (3.1/debian-11/Dockerfile)](https://github.com/bitnami/bitnami-docker-spark/blob/3.1.3-debian-11-r16/3.1/debian-11/Dockerfile) Subscribe to project updates by watching the [bitnami/spark GitHub repo](https://github.com/bitnami/bitnami-docker-spark).