-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[bitnami/redmine] Release redmine-6.0.1-debian-12-r0 (#74894)
Signed-off-by: Bitnami Bot <bitnami-bot@vmware.com>
- Loading branch information
1 parent
829a299
commit 3f622bd
Showing
39 changed files
with
5,647 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# Copyright Broadcom, Inc. All Rights Reserved. | ||
# SPDX-License-Identifier: APACHE-2.0 | ||
|
||
FROM docker.io/bitnami/minideb:bookworm | ||
|
||
ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith" | ||
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-11-14T13:03:43Z" \ | ||
org.opencontainers.image.description="Application packaged by Broadcom, Inc." \ | ||
org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/redmine/README.md" \ | ||
org.opencontainers.image.licenses="Apache-2.0" \ | ||
org.opencontainers.image.ref.name="6.0.1-debian-12-r0" \ | ||
org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/redmine" \ | ||
org.opencontainers.image.title="redmine" \ | ||
org.opencontainers.image.vendor="Broadcom, Inc." \ | ||
org.opencontainers.image.version="6.0.1" | ||
|
||
ENV OS_ARCH="${TARGETARCH:-amd64}" \ | ||
OS_FLAVOUR="debian-12" \ | ||
OS_NAME="linux" | ||
|
||
COPY prebuildfs / | ||
SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"] | ||
# Install required system packages and dependencies | ||
RUN install_packages acl ca-certificates curl ghostscript git gsfonts imagemagick libaudit1 libbrotli1 libbsd0 libcap-ng0 libcom-err2 libcrypt1 libcurl4 libedit2 libffi8 libgcc-s1 libgmp10 libgnutls30 libgssapi-krb5-2 libhogweed6 libicu72 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.5-0 liblz4-1 liblzma5 libmariadb3 libmd0 libncurses6 libnettle8 libnghttp2-14 libp11-kit0 libpam0g libpcre2-8-0 libpq5 libpsl5 libreadline-dev libreadline8 librtmp1 libsasl2-2 libssh2-1 libssl-dev libssl3 libstdc++6 libtasn1-6 libtinfo6 libunistring2 libuuid1 libxml2 libxslt1.1 libyaml-0-2 libyaml-dev libzstd1 procps sqlite3 zlib1g | ||
RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ ; \ | ||
COMPONENTS=( \ | ||
"yq-4.44.3-6-linux-${OS_ARCH}-debian-12" \ | ||
"ruby-3.2.6-0-linux-${OS_ARCH}-debian-12" \ | ||
"postgresql-client-17.0.0-1-linux-${OS_ARCH}-debian-12" \ | ||
"mysql-client-11.4.4-0-linux-${OS_ARCH}-debian-12" \ | ||
"redmine-6.0.1-0-linux-${OS_ARCH}-debian-12" \ | ||
) ; \ | ||
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" ; \ | ||
tar -zxf "${COMPONENT}.tar.gz" -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' ; \ | ||
rm -rf "${COMPONENT}".tar.gz{,.sha256} ; \ | ||
done | ||
RUN apt-get autoremove --purge -y curl && \ | ||
apt-get update && apt-get upgrade -y && \ | ||
apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives | ||
RUN find / -perm /6000 -type f -exec chmod a-s {} \; || true | ||
|
||
COPY rootfs / | ||
RUN /opt/bitnami/scripts/mysql-client/postunpack.sh | ||
RUN /opt/bitnami/scripts/redmine/postunpack.sh | ||
ENV APP_VERSION="6.0.1" \ | ||
BITNAMI_APP_NAME="redmine" \ | ||
PATH="/opt/bitnami/common/bin:/opt/bitnami/ruby/bin:/opt/bitnami/postgresql/bin:/opt/bitnami/mysql/bin:$PATH" | ||
|
||
EXPOSE 3000 | ||
|
||
ENTRYPOINT [ "/opt/bitnami/scripts/redmine/entrypoint.sh" ] | ||
CMD [ "/opt/bitnami/scripts/redmine/run.sh" ] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# Copyright Broadcom, Inc. All Rights Reserved. | ||
# SPDX-License-Identifier: APACHE-2.0 | ||
|
||
services: | ||
mariadb: | ||
image: docker.io/bitnami/mariadb:11.4 | ||
volumes: | ||
- 'mariadb_data:/bitnami/mariadb' | ||
environment: | ||
# ALLOW_EMPTY_PASSWORD is recommended only for development. | ||
- ALLOW_EMPTY_PASSWORD=yes | ||
- MARIADB_USER=bn_redmine | ||
- MARIADB_DATABASE=bitnami_redmine | ||
redmine: | ||
image: docker.io/bitnami/redmine:6 | ||
ports: | ||
- '80:3000' | ||
volumes: | ||
- 'redmine_data:/bitnami/redmine' | ||
depends_on: | ||
- mariadb | ||
environment: | ||
# ALLOW_EMPTY_PASSWORD is recommended only for development. | ||
- ALLOW_EMPTY_PASSWORD=yes | ||
- REDMINE_DATABASE_HOST=mariadb | ||
- REDMINE_DATABASE_PORT_NUMBER=3306 | ||
- REDMINE_DATABASE_USER=bn_redmine | ||
- REDMINE_DATABASE_NAME=bitnami_redmine | ||
volumes: | ||
mariadb_data: | ||
driver: local | ||
redmine_data: | ||
driver: local |
32 changes: 32 additions & 0 deletions
32
bitnami/redmine/6/debian-12/prebuildfs/opt/bitnami/.bitnami_components.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
{ | ||
"mysql-client": { | ||
"arch": "amd64", | ||
"distro": "debian-12", | ||
"type": "NAMI", | ||
"version": "11.4.4-0" | ||
}, | ||
"postgresql-client": { | ||
"arch": "amd64", | ||
"distro": "debian-12", | ||
"type": "NAMI", | ||
"version": "17.0.0-1" | ||
}, | ||
"redmine": { | ||
"arch": "amd64", | ||
"distro": "debian-12", | ||
"type": "NAMI", | ||
"version": "6.0.1-0" | ||
}, | ||
"ruby": { | ||
"arch": "amd64", | ||
"distro": "debian-12", | ||
"type": "NAMI", | ||
"version": "3.2.6-0" | ||
}, | ||
"yq": { | ||
"arch": "amd64", | ||
"distro": "debian-12", | ||
"type": "NAMI", | ||
"version": "4.44.3-6" | ||
} | ||
} |
2 changes: 2 additions & 0 deletions
2
bitnami/redmine/6/debian-12/prebuildfs/opt/bitnami/licenses/licenses.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Bitnami containers ship with software bundles. You can find the licenses under: | ||
/opt/bitnami/[name-of-bundle]/licenses/[bundle-version].txt |
54 changes: 54 additions & 0 deletions
54
bitnami/redmine/6/debian-12/prebuildfs/opt/bitnami/scripts/libbitnami.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
#!/bin/bash | ||
# Copyright Broadcom, Inc. All Rights Reserved. | ||
# SPDX-License-Identifier: APACHE-2.0 | ||
# | ||
# Bitnami custom library | ||
|
||
# shellcheck disable=SC1091 | ||
|
||
# Load Generic Libraries | ||
. /opt/bitnami/scripts/liblog.sh | ||
|
||
# Constants | ||
BOLD='\033[1m' | ||
|
||
# Functions | ||
|
||
######################## | ||
# Print the welcome page | ||
# Globals: | ||
# DISABLE_WELCOME_MESSAGE | ||
# BITNAMI_APP_NAME | ||
# Arguments: | ||
# None | ||
# Returns: | ||
# None | ||
######################### | ||
print_welcome_page() { | ||
if [[ -z "${DISABLE_WELCOME_MESSAGE:-}" ]]; then | ||
if [[ -n "$BITNAMI_APP_NAME" ]]; then | ||
print_image_welcome_page | ||
fi | ||
fi | ||
} | ||
|
||
######################## | ||
# Print the welcome page for a Bitnami Docker image | ||
# Globals: | ||
# BITNAMI_APP_NAME | ||
# Arguments: | ||
# None | ||
# Returns: | ||
# None | ||
######################### | ||
print_image_welcome_page() { | ||
local github_url="https://github.com/bitnami/containers" | ||
|
||
info "" | ||
info "${BOLD}Welcome to the Bitnami ${BITNAMI_APP_NAME} container${RESET}" | ||
info "Subscribe to project updates by watching ${BOLD}${github_url}${RESET}" | ||
info "Submit issues and feature requests at ${BOLD}${github_url}/issues${RESET}" | ||
info "Upgrade to Tanzu Application Catalog for production environments to access custom-configured and pre-packaged software components. Gain enhanced features, including Software Bill of Materials (SBOM), CVE scan result reports, and VEX documents. To learn more, visit ${BOLD}https://bitnami.com/enterprise${RESET}" | ||
info "" | ||
} | ||
|
141 changes: 141 additions & 0 deletions
141
bitnami/redmine/6/debian-12/prebuildfs/opt/bitnami/scripts/libfile.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
#!/bin/bash | ||
# Copyright Broadcom, Inc. All Rights Reserved. | ||
# SPDX-License-Identifier: APACHE-2.0 | ||
# | ||
# Library for managing files | ||
|
||
# shellcheck disable=SC1091 | ||
|
||
# Load Generic Libraries | ||
. /opt/bitnami/scripts/libos.sh | ||
|
||
# Functions | ||
|
||
######################## | ||
# Replace a regex-matching string in a file | ||
# Arguments: | ||
# $1 - filename | ||
# $2 - match regex | ||
# $3 - substitute regex | ||
# $4 - use POSIX regex. Default: true | ||
# Returns: | ||
# None | ||
######################### | ||
replace_in_file() { | ||
local filename="${1:?filename is required}" | ||
local match_regex="${2:?match regex is required}" | ||
local substitute_regex="${3:?substitute regex is required}" | ||
local posix_regex=${4:-true} | ||
|
||
local result | ||
|
||
# We should avoid using 'sed in-place' substitutions | ||
# 1) They are not compatible with files mounted from ConfigMap(s) | ||
# 2) We found incompatibility issues with Debian10 and "in-place" substitutions | ||
local -r del=$'\001' # Use a non-printable character as a 'sed' delimiter to avoid issues | ||
if [[ $posix_regex = true ]]; then | ||
result="$(sed -E "s${del}${match_regex}${del}${substitute_regex}${del}g" "$filename")" | ||
else | ||
result="$(sed "s${del}${match_regex}${del}${substitute_regex}${del}g" "$filename")" | ||
fi | ||
echo "$result" > "$filename" | ||
} | ||
|
||
######################## | ||
# Replace a regex-matching multiline string in a file | ||
# Arguments: | ||
# $1 - filename | ||
# $2 - match regex | ||
# $3 - substitute regex | ||
# Returns: | ||
# None | ||
######################### | ||
replace_in_file_multiline() { | ||
local filename="${1:?filename is required}" | ||
local match_regex="${2:?match regex is required}" | ||
local substitute_regex="${3:?substitute regex is required}" | ||
|
||
local result | ||
local -r del=$'\001' # Use a non-printable character as a 'sed' delimiter to avoid issues | ||
result="$(perl -pe "BEGIN{undef $/;} s${del}${match_regex}${del}${substitute_regex}${del}sg" "$filename")" | ||
echo "$result" > "$filename" | ||
} | ||
|
||
######################## | ||
# Remove a line in a file based on a regex | ||
# Arguments: | ||
# $1 - filename | ||
# $2 - match regex | ||
# $3 - use POSIX regex. Default: true | ||
# Returns: | ||
# None | ||
######################### | ||
remove_in_file() { | ||
local filename="${1:?filename is required}" | ||
local match_regex="${2:?match regex is required}" | ||
local posix_regex=${3:-true} | ||
local result | ||
|
||
# We should avoid using 'sed in-place' substitutions | ||
# 1) They are not compatible with files mounted from ConfigMap(s) | ||
# 2) We found incompatibility issues with Debian10 and "in-place" substitutions | ||
if [[ $posix_regex = true ]]; then | ||
result="$(sed -E "/$match_regex/d" "$filename")" | ||
else | ||
result="$(sed "/$match_regex/d" "$filename")" | ||
fi | ||
echo "$result" > "$filename" | ||
} | ||
|
||
######################## | ||
# Appends text after the last line matching a pattern | ||
# Arguments: | ||
# $1 - file | ||
# $2 - match regex | ||
# $3 - contents to add | ||
# Returns: | ||
# None | ||
######################### | ||
append_file_after_last_match() { | ||
local file="${1:?missing file}" | ||
local match_regex="${2:?missing pattern}" | ||
local value="${3:?missing value}" | ||
|
||
# We read the file in reverse, replace the first match (0,/pattern/s) and then reverse the results again | ||
result="$(tac "$file" | sed -E "0,/($match_regex)/s||${value}\n\1|" | tac)" | ||
echo "$result" > "$file" | ||
} | ||
|
||
######################## | ||
# Wait until certain entry is present in a log file | ||
# Arguments: | ||
# $1 - entry to look for | ||
# $2 - log file | ||
# $3 - max retries. Default: 12 | ||
# $4 - sleep between retries (in seconds). Default: 5 | ||
# Returns: | ||
# Boolean | ||
######################### | ||
wait_for_log_entry() { | ||
local -r entry="${1:-missing entry}" | ||
local -r log_file="${2:-missing log file}" | ||
local -r retries="${3:-12}" | ||
local -r interval_time="${4:-5}" | ||
local attempt=0 | ||
|
||
check_log_file_for_entry() { | ||
if ! grep -qE "$entry" "$log_file"; then | ||
debug "Entry \"${entry}\" still not present in ${log_file} (attempt $((++attempt))/${retries})" | ||
return 1 | ||
fi | ||
} | ||
debug "Checking that ${log_file} log file contains entry \"${entry}\"" | ||
if retry_while check_log_file_for_entry "$retries" "$interval_time"; then | ||
debug "Found entry \"${entry}\" in ${log_file}" | ||
true | ||
else | ||
error "Could not find entry \"${entry}\" in ${log_file} after ${retries} retries" | ||
debug_execute cat "$log_file" | ||
return 1 | ||
fi | ||
} |
Oops, something went wrong.