From 25819efa28f3ec7198616183bcc54d8628710c1c Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Wed, 19 Jul 2023 15:18:15 +0200 Subject: [PATCH] [bitnami/flink] Release 1.17.1-debian-11-r46 (#41413) Signed-off-by: Bitnami Containers --- bitnami/flink/1/debian-11/Dockerfile | 11 ++--- .../opt/bitnami/.bitnami_components.json | 2 +- .../opt/bitnami/scripts/libvalidations.sh | 40 ++++++++++++++++++- .../rootfs/opt/bitnami/scripts/flink-env.sh | 4 ++ .../rootfs/opt/bitnami/scripts/flink/run.sh | 2 +- .../rootfs/opt/bitnami/scripts/flink/setup.sh | 4 +- .../rootfs/opt/bitnami/scripts/libflink.sh | 28 +++++++++++++ 7 files changed, 81 insertions(+), 10 deletions(-) diff --git a/bitnami/flink/1/debian-11/Dockerfile b/bitnami/flink/1/debian-11/Dockerfile index 5d2a82e3ad1b..f4e9c7086979 100644 --- a/bitnami/flink/1/debian-11/Dockerfile +++ b/bitnami/flink/1/debian-11/Dockerfile @@ -6,11 +6,12 @@ FROM docker.io/bitnami/minideb:bullseye ARG JAVA_EXTRA_SECURITY_DIR="/bitnami/java/extra-security" ARG TARGETARCH -LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ - org.opencontainers.image.created="2023-07-15T15:59:27Z" \ +LABEL com.vmware.cp.artifact.flavor="sha256:1e1b4657a77f0d47e9220f0c37b9bf7802581b93214fff7d1bd2364c8bf22e8e" \ + org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ + org.opencontainers.image.created="2023-07-19T12:21:42Z" \ org.opencontainers.image.description="Application packaged by VMware, Inc" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="1.17.1-debian-11-r17" \ + org.opencontainers.image.ref.name="1.17.1-debian-11-r46" \ org.opencontainers.image.title="flink" \ org.opencontainers.image.vendor="VMware, Inc." \ org.opencontainers.image.version="1.17.1" @@ -23,11 +24,11 @@ ENV HOME="/" \ COPY prebuildfs / SHELL ["/bin/bash", "-o", "pipefail", "-c"] # Install required system packages and dependencies -RUN install_packages acl ca-certificates curl gettext-base libjemalloc-dev procps zlib1g +RUN install_packages acl ca-certificates curl gettext libjemalloc2 procps zlib1g RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ COMPONENTS=( \ "java-11.0.19-7-2-linux-${OS_ARCH}-debian-11" \ - "flink-1.17.1-1-linux-${OS_ARCH}-debian-11" \ + "flink-1.17.1-2-linux-${OS_ARCH}-debian-11" \ ) && \ for COMPONENT in "${COMPONENTS[@]}"; do \ if [ ! -f "${COMPONENT}.tar.gz" ]; then \ diff --git a/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json index d541a7835d80..b97502ec50b5 100644 --- a/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json @@ -3,7 +3,7 @@ "arch": "amd64", "distro": "debian-11", "type": "NAMI", - "version": "1.17.1-1" + "version": "1.17.1-2" }, "java": { "arch": "amd64", diff --git a/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/scripts/libvalidations.sh b/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/scripts/libvalidations.sh index 3c6a4109c2c5..54987abca42a 100644 --- a/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/scripts/libvalidations.sh +++ b/bitnami/flink/1/debian-11/prebuildfs/opt/bitnami/scripts/libvalidations.sh @@ -187,6 +187,25 @@ validate_port() { fi } +######################## +# Validate if the provided argument is a valid IPv6 address +# Arguments: +# $1 - IP to validate +# Returns: +# Boolean +######################### +validate_ipv6() { + local ip="${1:?ip is missing}" + local stat=1 + local full_address_regex='^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$' + local short_address_regex='^((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}){0,6}::(([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4}){0,6})$' + + if [[ $ip =~ $full_address_regex || $ip =~ $short_address_regex || $ip == "::" ]]; then + stat=0 + fi + return "$stat" +} + ######################## # Validate if the provided argument is a valid IPv4 address # Arguments: @@ -204,7 +223,26 @@ validate_ipv4() { && ${ip_array[2]} -le 255 && ${ip_array[3]} -le 255 ]] stat=$? fi - return $stat + return "$stat" +} + +######################## +# Validate if the provided argument is a valid IPv4 or IPv6 address +# Arguments: +# $1 - IP to validate +# Returns: +# Boolean +######################### +validate_ip() { + local ip="${1:?ip is missing}" + local stat=1 + + if validate_ipv4 "$ip"; then + stat=0 + else + stat=$(validate_ipv6 "$ip") + fi + return "$stat" } ######################## diff --git a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink-env.sh b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink-env.sh index 501fa8b81b56..7d9c941f2012 100644 --- a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink-env.sh +++ b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink-env.sh @@ -25,6 +25,7 @@ export BITNAMI_DEBUG="${BITNAMI_DEBUG:-false}" # variable will be overridden with the value specified in that file flink_env_vars=( FLINK_MODE + FLINK_CFG_REST_PORT FLINK_TASK_MANAGER_NUMBER_OF_TASK_SLOTS FLINK_PROPERTIES ) @@ -43,11 +44,14 @@ unset flink_env_vars # Paths export FLINK_BASE_DIR="${BITNAMI_ROOT_DIR}/flink" +export FLINK_BIN_DIR="${FLINK_BASE_DIR}/bin" export FLINK_WORK_DIR="${FLINK_BASE_DIR}" +export FLINK_LOG_DIR="${FLINK_BASE_DIR}/log" export FLINK_CONF_DIR="${FLINK_BASE_DIR}/conf" export FLINK_CONF_FILE="flink-conf.yaml" export FLINK_CONF_FILE_PATH="${FLINK_CONF_DIR}/${FLINK_CONF_FILE}" export FLINK_MODE="${FLINK_MODE:-jobmanager}" +export FLINK_CFG_REST_PORT="${FLINK_CFG_REST_PORT:-8081}" export FLINK_TASK_MANAGER_NUMBER_OF_TASK_SLOTS="${FLINK_TASK_MANAGER_NUMBER_OF_TASK_SLOTS:-$(grep -c ^processor /proc/cpuinfo)}" export FLINK_PROPERTIES="${FLINK_PROPERTIES:-}" diff --git a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/run.sh b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/run.sh index 34b137c7d916..e049b618d0c9 100755 --- a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/run.sh +++ b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/run.sh @@ -68,7 +68,7 @@ elif [[ "$FLINK_MODE" = "taskmanager" ]]; then args=("start-foreground" "${args[@]}") else error "Flink mode not recognized" - return 1 + exit 1 fi # Running command diff --git a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/setup.sh b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/setup.sh index 57d97d79793c..3644f66a3d35 100755 --- a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/setup.sh +++ b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/flink/setup.sh @@ -18,8 +18,8 @@ set -o pipefail # Load Apache Flink environment variables . /opt/bitnami/scripts/flink-env.sh -# Ensure ActiveMQ environment variables are valid +# Ensure Flink environment variables are valid flink_validate -# Ensure ActiveMQ is initialized +# Ensure Flink is initialized flink_initialize diff --git a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/libflink.sh b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/libflink.sh index 547f2356e0cb..d6c6aecc4d60 100644 --- a/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/libflink.sh +++ b/bitnami/flink/1/debian-11/rootfs/opt/bitnami/scripts/libflink.sh @@ -10,6 +10,7 @@ . /opt/bitnami/scripts/libfile.sh . /opt/bitnami/scripts/libpersistence.sh . /opt/bitnami/scripts/libvalidations.sh +. /opt/bitnami/scripts/libservice.sh ######################## # Set a config option into the Flink configuration specified file. @@ -187,3 +188,30 @@ flink_setup_jemalloc() { warn "Couldn't find jemalloc installed. Skipping jemalloc configuration." fi } + +######################## +# Check if Flink daemon is running +# Arguments: +# None +# Returns: +# Boolean +######################### +is_flink_running() { + local -r pid="$(get_pid_from_file "$FLINK_PID_FILE")" + if [[ -n "$pid" ]]; then + is_service_running "$pid" + else + false + fi +} + +######################## +# Check if Flink daemon is not running +# Arguments: +# None +# Returns: +# Boolean +######################### +is_flink_not_running() { + ! is_flink_running +}