[bitnami/harbor-core] Release 2.7.1-debian-11-r9 (#27624)

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
This commit is contained in:
Bitnami Bot 2023-03-20 09:13:51 +01:00 committed by GitHub
parent ff5725760d
commit fec4ee897d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 72 additions and 30 deletions

View File

@ -3,10 +3,10 @@ FROM docker.io/bitnami/minideb:bullseye
ARG TARGETARCH
LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \
org.opencontainers.image.created="2023-03-13T23:55:32Z" \
org.opencontainers.image.created="2023-03-18T21:48:47Z" \
org.opencontainers.image.description="Application packaged by VMware, Inc" \
org.opencontainers.image.licenses="Apache-2.0" \
org.opencontainers.image.ref.name="2.7.1-debian-11-r8" \
org.opencontainers.image.ref.name="2.7.1-debian-11-r9" \
org.opencontainers.image.title="harbor-core" \
org.opencontainers.image.vendor="VMware, Inc." \
org.opencontainers.image.version="2.7.1"
@ -22,10 +22,10 @@ SHELL ["/bin/bash", "-o", "pipefail", "-c"]
RUN install_packages ca-certificates curl procps
RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \
COMPONENTS=( \
"ini-file-1.4.5-1-linux-${OS_ARCH}-debian-11" \
"wait-for-port-1.0.6-1-linux-${OS_ARCH}-debian-11" \
"harbor-core-2.7.1-1-linux-${OS_ARCH}-debian-11" \
"gosu-1.16.0-2-linux-${OS_ARCH}-debian-11" \
"ini-file-1.4.5-2-linux-${OS_ARCH}-debian-11" \
"wait-for-port-1.0.6-2-linux-${OS_ARCH}-debian-11" \
"harbor-core-2.7.1-2-linux-${OS_ARCH}-debian-11" \
"gosu-1.16.0-3-linux-${OS_ARCH}-debian-11" \
) && \
for COMPONENT in "${COMPONENTS[@]}"; do \
if [ ! -f "${COMPONENT}.tar.gz" ]; then \

View File

@ -1,30 +1,30 @@
{
"gosu": {
"arch": "amd64",
"digest": "f6056076afb745fd7d9d87d20f71e7248d63330352cf5ae0be2130b7f44a8cfa",
"digest": "bf2b90a31df691e3648c4a41190a926bb638c3a9fa1dfcde36623ce1bfaadc23",
"distro": "debian-11",
"type": "NAMI",
"version": "1.16.0-2"
"version": "1.16.0-3"
},
"harbor-core": {
"arch": "amd64",
"digest": "07c49fda5e0bce464c211eb4e280e72626dc792289a3cf76c57c7bdc52c491c6",
"digest": "65d148c0a566cadf2d13ed1e9d3d52c4e38949eed2a42272be951f5bad6a23e1",
"distro": "debian-11",
"type": "NAMI",
"version": "2.7.1-1"
"version": "2.7.1-2"
},
"ini-file": {
"arch": "amd64",
"digest": "75d5f74f62ca3a476e5ffc01715b197ba18c3b45a85b18fb61cc68e998616119",
"digest": "c75066994058575c6092fb760bd53feeb2aabd6039e942f3904de57f5a5534dc",
"distro": "debian-11",
"type": "NAMI",
"version": "1.4.5-1"
"version": "1.4.5-2"
},
"wait-for-port": {
"arch": "amd64",
"digest": "be7c393d598ddf16d1c3c008a67b87879e48aca62071a208583390f2b41e6744",
"digest": "66c83aadf646d230d0cb097d9fe1663911bed94fabf8cbba2a17c39f7c6ffbcc",
"distro": "debian-11",
"type": "NAMI",
"version": "1.0.6-1"
"version": "1.0.6-2"
}
}

View File

@ -281,6 +281,8 @@ remove_logrotate_conf() {
# --environment - Environment variable to define (multiple --environment options may be passed)
# --environment-file - Text file with environment variables
# --exec-start - Start command (required)
# --exec-start-pre - Pre-start command (optional)
# --exec-start-post - Post-start command (optional)
# --exec-stop - Stop command (optional)
# --exec-reload - Reload command (optional)
# --group - System group to start the service with
@ -292,6 +294,7 @@ remove_logrotate_conf() {
# --success-exit-status - Exit code that indicates a successful shutdown
# --type - Systemd unit type (defaults to forking)
# --user - System user to start the service with
# --working-directory - Working directory at which to start the service
# Returns:
# None
#########################
@ -307,6 +310,8 @@ generate_systemd_conf() {
local environment=""
local environment_file=""
local exec_start=""
local exec_start_pre=""
local exec_start_post=""
local exec_stop=""
local exec_reload=""
local restart="always"
@ -316,6 +321,7 @@ generate_systemd_conf() {
local limits_content=""
local success_exit_status=""
local custom_service_content=""
local working_directory=""
# Parse CLI flags
shift
while [[ "$#" -gt 0 ]]; do
@ -334,6 +340,7 @@ generate_systemd_conf() {
| --standard-error \
| --success-exit-status \
| --custom-service-content \
| --working-directory \
)
var_name="$(echo "$1" | sed -e "s/^--//" -e "s/-/_/g")"
shift
@ -345,11 +352,21 @@ generate_systemd_conf() {
shift
limits_content+="Limit${var_name^^}=${1:?"--limit-${var_name} value is missing"}"
;;
--exec-start-pre)
shift
[[ -n "$exec_start_pre" ]] && exec_start_pre+=$'\n'
exec_start_pre+="ExecStartPre=${1:?"--exec-start-pre value is missing"}"
;;
--exec-start-post)
shift
[[ -n "$exec_start_post" ]] && exec_start_post+=$'\n'
exec_start_post+="ExecStartPost=${1:?"--exec-start-post value is missing"}"
;;
--environment)
shift
# It is possible to add multiple environment lines
[[ -n "$environment" ]] && environment+=$'\n'
environment+="Environment=${1:?"environment" is missing}"
environment+="Environment=${1:?"--environment value is missing"}"
;;
*)
echo "Invalid command line flag ${1}" >&2
@ -376,8 +393,21 @@ PartOf=bitnami.service
[Service]
Type=${type}
ExecStart=${exec_start}
EOF
if [[ -n "$working_directory" ]]; then
cat >> "$service_file" <<< "WorkingDirectory=$working_directory"
fi
if [[ -n "$exec_start_pre" ]]; then
# This variable may contain multiple ExecStartPre= directives
cat >> "$service_file" <<< "$exec_start_pre"
fi
if [[ -n "$exec_start" ]]; then
cat >> "$service_file" <<< "ExecStart=${exec_start}"
fi
if [[ -n "$exec_start_post" ]]; then
# This variable may contain multiple ExecStartPost= directives
cat >> "$service_file" <<< "$exec_start_post"
fi
# Optional stop and reload commands
if [[ -n "$exec_stop" ]]; then
cat >> "$service_file" <<< "ExecStop=${exec_stop}"
@ -399,8 +429,9 @@ EOF
if [[ -n "$restart" ]]; then
cat >> "$service_file" <<< "Restart=${restart}"
fi
# Environment flags (may be specified multiple times in a unit)
# Environment flags
if [[ -n "$environment" ]]; then
# This variable may contain multiple Environment= directives
cat >> "$service_file" <<< "$environment"
fi
if [[ -n "$environment_file" ]]; then
@ -414,6 +445,7 @@ EOF
cat >> "$service_file" <<< "StandardError=${standard_error}"
fi
if [[ -n "$custom_service_content" ]]; then
# This variable may contain multiple miscellaneous directives
cat >> "$service_file" <<< "$custom_service_content"
fi
if [[ -n "$success_exit_status" ]]; then
@ -424,7 +456,8 @@ EOF
fi
cat >> "$service_file" <<EOF
# Optimizations
TimeoutSec=5min
TimeoutStartSec=2min
TimeoutStopSec=30s
IgnoreSIGPIPE=no
KillMode=mixed
EOF

View File

@ -22,6 +22,7 @@ export BITNAMI_DEBUG="${BITNAMI_DEBUG:-false}"
# Paths
export HARBOR_CORE_BASE_DIR="${BITNAMI_ROOT_DIR}/harbor-core"
export HARBOR_CORE_VOLUME_DIR="/data"
export PATH="${BITNAMI_ROOT_DIR}/common/bin:${PATH}"
# System users
export HARBOR_CORE_DAEMON_USER="harbor"

View File

@ -1,6 +1,6 @@
#!/bin/bash
# shellcheck disable=SC1091
# shellcheck disable=SC1090,SC1091
set -o errexit
set -o nounset

View File

@ -13,7 +13,7 @@
# Get the paths relevant to CA certs depending
# on the OS
# Globals:
# OS_FLAVOUR
# None
# Arguments:
# None
# Returns:
@ -21,9 +21,11 @@
# depending on the OS.
#########################
get_system_cert_paths() {
if [[ "$OS_FLAVOUR" =~ ^(debian|ubuntu)-.*$ ]]; then
local distro
distro="$(get_os_metadata --id)"
if [[ "$distro" =~ ^(debian|ubuntu)$ ]]; then
echo "/etc/ssl/certs/"
elif [[ "$OS_FLAVOUR" =~ ^(centos|photon)-.*$ ]]; then
elif [[ "$distro" =~ ^(centos|photon)$ ]]; then
echo "/etc/pki/tls/certs/"
else
# Check the existence of generic paths when OS_FLAVOR does
@ -41,7 +43,7 @@ get_system_cert_paths() {
########################
# Ensure CA bundles allows users in root group install new certificate
# Globals:
# OS_FLAVOUR
# None
# Arguments:
# None
# Returns:
@ -60,7 +62,7 @@ configure_permissions_system_certs() {
# Grant group write permissions to the file provided and change ownership if a the owner argument is set.
# If the path is not a file, then do nothing.
# Globals:
# OS_FLAVOUR
# None
# Arguments:
# $1 - path
# $2 - owner
@ -83,7 +85,7 @@ set_permissions_ownership() {
# Place a given certificate in the correct location for installation
# depending on the OS
# Globals:
# OS_FLAVOUR*
# None
# Arguments:
# $1 - certificate to be installed
# Returns:
@ -91,10 +93,12 @@ set_permissions_ownership() {
#########################
install_cert() {
local -r cert="${1:?missing certificate}"
local distro
distro="$(get_os_metadata --id)"
if [[ "$OS_FLAVOUR" =~ ^(debian|ubuntu)-.*$ ]]; then
if [[ "$distro" =~ ^(debian|ubuntu)$ ]]; then
cat "$cert" >> /etc/ssl/certs/ca-certificates.crt
elif [[ "$OS_FLAVOUR" =~ ^(centos|photon)-.*$ ]]; then
elif [[ "$distro" =~ ^(centos|photon)$ ]]; then
cat "$cert" >> /etc/pki/tls/certs/ca-bundle.crt
else
# Check the existence of generic ca-bundles when OS_FLAVOR does
@ -168,17 +172,21 @@ install_custom_certs() {
# String
#########################
harbor_generate_env_file_contents() {
local -r envvars_string="${1:?missing envvars}"
echo "#!/bin/bash"
local -r envvars_string="${1:-}"
[[ -z "$envvars_string" ]] && return
# For systemd, we will load it via EnvironmentFile=, so the shebang is not needed
[[ "$BITNAMI_SERVICE_MANAGER" != "systemd" ]] && echo "#!/bin/bash"
while IFS= read -r ENV_VAR_LINE; do
if [[ ! "$ENV_VAR_LINE" =~ ^[A-Z_] ]]; then
continue
fi
ENV_VAR_NAME="${ENV_VAR_LINE/=*}"
ENV_VAR_VALUE="${ENV_VAR_LINE#*=}"
# For systemd, we will load it via EnvironmentFile=, which does not allow 'export'
[[ "$BITNAMI_SERVICE_MANAGER" != "systemd" ]] && echo -n 'export '
# Use single quotes to avoid shell expansion, and escape to be parsed properly (even if it contains quotes)
# Escape the value, so it can be parsed as a variable even with quotes set
echo "export ${ENV_VAR_NAME}='${ENV_VAR_VALUE//\'/\'\\\'\'}'"
echo "${ENV_VAR_NAME}='${ENV_VAR_VALUE//\'/\'\\\'\'}'"
done <<< "$envvars_string"
}