Skip to content

Commit 5f96566

Browse files
authored
[bitnami/nessie] Release 0.107.9-debian-12-r0 (#94389)
Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>
1 parent a87eb37 commit 5f96566

9 files changed

Lines changed: 59 additions & 14 deletions

bitnami/nessie/0/debian-12/Dockerfile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ ARG JAVA_EXTRA_SECURITY_DIR="/bitnami/java/extra-security"
88
ARG TARGETARCH
99

1010
LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \
11-
org.opencontainers.image.created="2026-05-27T11:15:58Z" \
11+
org.opencontainers.image.created="2026-06-05T15:05:37Z" \
1212
org.opencontainers.image.description="Application packaged by Broadcom, Inc." \
1313
org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/nessie/README.md" \
1414
org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/nessie" \
1515
org.opencontainers.image.title="nessie" \
1616
org.opencontainers.image.vendor="Broadcom, Inc." \
17-
org.opencontainers.image.version="0.107.6"
17+
org.opencontainers.image.version="0.107.9"
1818

1919
ENV HOME="/" \
2020
OS_ARCH="${TARGETARCH:-amd64}" \
@@ -30,7 +30,7 @@ RUN --mount=type=secret,id=downloads_url,env=SECRET_DOWNLOADS_URL \
3030
mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ || exit 1 ; \
3131
COMPONENTS=( \
3232
"jre-21.0.11-11-1-linux-${OS_ARCH}-debian-12" \
33-
"nessie-0.107.6-0-linux-${OS_ARCH}-debian-12" \
33+
"nessie-0.107.9-0-linux-${OS_ARCH}-debian-12" \
3434
) ; \
3535
for COMPONENT in "${COMPONENTS[@]}"; do \
3636
if [ ! -f "${COMPONENT}.tar.gz" ]; then \
@@ -49,7 +49,7 @@ RUN find / -perm /6000 -type f -exec chmod a-s {} \; || true
4949

5050
COPY rootfs /
5151
RUN /opt/bitnami/scripts/java/postunpack.sh
52-
ENV APP_VERSION="0.107.6" \
52+
ENV APP_VERSION="0.107.9" \
5353
BITNAMI_APP_NAME="nessie" \
5454
IMAGE_REVISION="0" \
5555
JAVA_HOME="/opt/bitnami/java" \

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/checksums/nessie-0.107.6-0-linux-amd64-debian-12.tar.gz.sha256

Lines changed: 0 additions & 1 deletion
This file was deleted.

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/checksums/nessie-0.107.6-0-linux-arm64-debian-12.tar.gz.sha256

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
d7c3e1c7d8563adb8519912403bb7dce1a38c473c86847b82be85f85706a9367 nessie-0.107.9-0-linux-amd64-debian-12.tar.gz
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
8108046d1fd07f6a0bdf1bbedf0d934d1527dc2614577af81f72ef70e902e9c5 nessie-0.107.9-0-linux-arm64-debian-12.tar.gz

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/scripts/libfs.sh

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ relativize() {
131131
# -d|--dir-mode - mode for files.
132132
# -u|--user - user
133133
# -g|--group - group
134+
# -n|--no-dereference - do not follow symlinks (use for runtime root chown of daemon-writable dirs)
134135
# Returns:
135136
# None
136137
#########################
@@ -140,6 +141,7 @@ configure_permissions_ownership() {
140141
local file_mode=""
141142
local user=""
142143
local group=""
144+
local follow_symlinks="yes"
143145

144146
# Validate arguments
145147
shift 1
@@ -161,6 +163,9 @@ configure_permissions_ownership() {
161163
shift
162164
group="${1:?missing group}"
163165
;;
166+
-n | --no-dereference)
167+
follow_symlinks="no"
168+
;;
164169
*)
165170
echo "Invalid command line flag $1" >&2
166171
return 1
@@ -169,22 +174,29 @@ configure_permissions_ownership() {
169174
shift
170175
done
171176

177+
# -L: follow symlinks and emits the target path
178+
# This is dangerous at runtime, given a co-located lower-privileged process with write access
179+
# to the target path can redirect the chown/chmod to arbitrary paths. Example:
180+
# Lower-privileged process run: ln -s /etc /tmp/etc
181+
# Then, setup.sh runs: configure_permissions_ownership --dir-mode 775 /tmp
182+
local find_L_flag=(); [[ "$follow_symlinks" == "yes" ]] && find_L_flag=("-L")
183+
# -h: changes symlink inode ownership without touching the target.
184+
local chown_flags=(); [[ "$follow_symlinks" == "no" ]] && chown_flags=("-h")
172185
read -r -a filepaths <<<"$paths"
173186
for p in "${filepaths[@]}"; do
174187
if [[ -e "$p" ]]; then
175-
find -L "$p" -printf ""
176188
if [[ -n $dir_mode ]]; then
177-
find -L "$p" -type d ! -perm "$dir_mode" -print0 | xargs -r -0 chmod "$dir_mode"
189+
find "${find_L_flag[@]}" "$p" -not -type l -type d ! -perm "$dir_mode" -print0 | xargs -r -0 chmod "$dir_mode"
178190
fi
179191
if [[ -n $file_mode ]]; then
180-
find -L "$p" -type f ! -perm "$file_mode" -print0 | xargs -r -0 chmod "$file_mode"
192+
find "${find_L_flag[@]}" "$p" -not -type l -type f ! -perm "$file_mode" -print0 | xargs -r -0 chmod "$file_mode"
181193
fi
182194
if [[ -n $user ]] && [[ -n $group ]]; then
183-
find -L "$p" -print0 | xargs -r -0 chown "${user}:${group}"
195+
find "${find_L_flag[@]}" "$p" -print0 | xargs -r -0 chown "${chown_flags[@]}" "${user}:${group}"
184196
elif [[ -n $user ]] && [[ -z $group ]]; then
185-
find -L "$p" -print0 | xargs -r -0 chown "${user}"
197+
find "${find_L_flag[@]}" "$p" -print0 | xargs -r -0 chown "${chown_flags[@]}" "${user}"
186198
elif [[ -z $user ]] && [[ -n $group ]]; then
187-
find -L "$p" -print0 | xargs -r -0 chgrp "${group}"
199+
find "${find_L_flag[@]}" "$p" -print0 | xargs -r -0 chgrp "${chown_flags[@]}" "${group}"
188200
fi
189201
else
190202
stderr_print "$p does not exist"

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/scripts/libos.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ ensure_user_exists() {
170170
if [[ -n "$home" ]]; then
171171
mkdir -p "$home"
172172
usermod -d "$home" "$user" >/dev/null 2>&1
173-
configure_permissions_ownership "$home" -d "775" -f "664" -u "$user" -g "$group"
173+
configure_permissions_ownership "$home" -d "775" -f "664" -u "$user" -g "$group" -n
174174
fi
175175
}
176176

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/scripts/libvalidations.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
#########################
2121
is_int() {
2222
local -r int="${1:?missing value}"
23-
if [[ "$int" =~ ^-?[0-9]+ ]]; then
23+
if [[ "$int" =~ ^-?[0-9]+$ ]]; then
2424
true
2525
else
2626
false

bitnami/nessie/0/debian-12/prebuildfs/opt/bitnami/scripts/libversion.sh

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,36 @@ get_sematic_version () {
4949
fi
5050
fi
5151
}
52+
53+
########################
54+
# Compares two semantic versions
55+
# Arguments:
56+
# $1 - version1: first version to compare
57+
# $2 - version2: second version to compare
58+
# Returns:
59+
# -1 if version1 is less than version2
60+
# 0 if version1 is equal to version2
61+
# 1 if version1 is greater than version2
62+
#########################
63+
compare_semantic_versions() {
64+
local version1="${1:?version1 is required}"
65+
local version2="${2:?version2 is required}"
66+
local major1 major2 minor1 minor2 patch1 patch2
67+
68+
major1="$(get_sematic_version "$version1" 1)"
69+
major2="$(get_sematic_version "$version2" 1)"
70+
minor1="$(get_sematic_version "$version1" 2)"
71+
minor2="$(get_sematic_version "$version2" 2)"
72+
patch1="$(get_sematic_version "$version1" 3)"
73+
patch2="$(get_sematic_version "$version2" 3)"
74+
75+
if [[ "$major1" -eq "$major2" ]] && [[ "$minor1" -eq "$minor2" ]] && [[ "$patch1" -eq "$patch2" ]]; then
76+
echo "0"
77+
elif [[ "$major1" -lt "$major2" ]] ||
78+
{ [[ "$major1" -eq "$major2" ]] && [[ "$minor1" -lt "$minor2" ]]; } ||
79+
{ [[ "$major1" -eq "$major2" ]] && [[ "$minor1" -eq "$minor2" ]] && [[ "$patch1" -lt "$patch2" ]]; }; then
80+
echo "-1"
81+
else
82+
echo "1"
83+
fi
84+
}

0 commit comments

Comments
 (0)