From 7668154e67a4edadbaad2fc4f2b0823107f24383 Mon Sep 17 00:00:00 2001 From: casjay Date: Sun, 24 May 2026 19:58:15 -0400 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Fix=20silent=20download=20failur?= =?UTF-8?q?e=20and=20cosmetic=20naming=20bugs=20=F0=9F=90=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes three bugs discovered during live container testing. The critical bug was a bash post-increment no-op: `exitCode=$((exitCode++))` assigns the *old* value back to the variable, so exitCode stays 0 even when a download fails. This caused the Docker build to succeed silently when the gitea binary download failed, publishing a broken image to Docker Hub. - rootfs/root/docker/setup/05-custom.sh: change exitCode=$((exitCode++)) to exitCode=$((exitCode + 1)) in both the gitea and act_runner failure handlers - rootfs/usr/local/bin/entrypoint.sh: change CONTAINER_NAME and description from "archlinux" (copied template default) to "gitea" - rootfs/usr/local/etc/docker/init.d/08-gitea.sh: remove leading space from [ -d " /config/ssh" ] path test so the directory existence check is correct .claude/ rootfs/root/docker/setup/05-custom.sh rootfs/usr/local/bin/entrypoint.sh rootfs/usr/local/etc/docker/init.d/08-gitea.sh --- .claude/settings.local.json | 7 +++++++ rootfs/root/docker/setup/05-custom.sh | 4 ++-- rootfs/usr/local/bin/entrypoint.sh | 6 +++--- rootfs/usr/local/etc/docker/init.d/08-gitea.sh | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) create mode 100644 .claude/settings.local.json diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..84c9119 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,7 @@ +{ + "permissions": { + "allow": [ + "Bash(script-lint *)" + ] + } +} diff --git a/rootfs/root/docker/setup/05-custom.sh b/rootfs/root/docker/setup/05-custom.sh index cceb04e..df0e532 100755 --- a/rootfs/root/docker/setup/05-custom.sh +++ b/rootfs/root/docker/setup/05-custom.sh @@ -51,7 +51,7 @@ if curl -q -LSsf "$GITEA_URL" -o "/tmp/gitea.$$"; then fi else echo "Failed to download gitea" >&2 - exitCode=$((exitCode++)) + exitCode=$((exitCode + 1)) fi echo "Downloading act_runner from $ACT_URL" if curl -q -LSsf "$ACT_URL" -o "/tmp/act_runner.$$"; then @@ -60,7 +60,7 @@ if curl -q -LSsf "$ACT_URL" -o "/tmp/act_runner.$$"; then chmod +x "$ACT_BIN_FILE" else echo "Failed to download act_runner" >&2 - exitCode=$((exitCode++)) + exitCode=$((exitCode + 1)) fi [ -x "$ACT_BIN_FILE" ] && [ -x "$GITEA_BIN_FILE" ] && exitCode=0 # - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/rootfs/usr/local/bin/entrypoint.sh b/rootfs/usr/local/bin/entrypoint.sh index 8020d67..d8b2ef5 100755 --- a/rootfs/usr/local/bin/entrypoint.sh +++ b/rootfs/usr/local/bin/entrypoint.sh @@ -9,7 +9,7 @@ # @@Copyright : Copyright: (c) 2026 Jason Hempstead, Casjays Developments # @@Created : Sunday, May 24, 2026 11:58 EDT # @@File : entrypoint.sh -# @@Description : Entrypoint file for archlinux +# @@Description : Entrypoint file for gitea # @@Changelog : New script # @@TODO : Better documentation # @@Other : @@ -39,7 +39,7 @@ PATH="/usr/local/etc/docker/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin" # - - - - - - - - - - - - - - - - - - - - - - - - - # Set bash options SCRIPT_FILE="$0" -CONTAINER_NAME="archlinux" +CONTAINER_NAME="gitea" SCRIPT_NAME="${SCRIPT_FILE##*/}" CONTAINER_NAME="${ENV_CONTAINER_NAME:-$CONTAINER_NAME}" # - - - - - - - - - - - - - - - - - - - - - - - - - @@ -294,7 +294,7 @@ fi if [ "$ENTRYPOINT_FIRST_RUN" != "no" ]; then if [ "$CONFIG_DIR_INITIALIZED" = "no" ] || [ "$DATA_DIR_INITIALIZED" = "no" ]; then if [ "$ENTRYPOINT_MESSAGE" = "yes" ]; then - echo "Executing entrypoint script for archlinux" + echo "Executing entrypoint script for gitea" fi fi # - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/rootfs/usr/local/etc/docker/init.d/08-gitea.sh b/rootfs/usr/local/etc/docker/init.d/08-gitea.sh index 2cf12da..1bdb12f 100755 --- a/rootfs/usr/local/etc/docker/init.d/08-gitea.sh +++ b/rootfs/usr/local/etc/docker/init.d/08-gitea.sh @@ -322,7 +322,7 @@ __update_conf_files() { # - - - - - - - - - - - - - - - - - - - - - - - - - # define actions - [ -d " /config/ssh" ] || mkdir -p "/config/ssh" + [ -d "/config/ssh" ] || mkdir -p "/config/ssh" [ -d "$DATA_DIR/ssh" ] || mkdir -p "$DATA_DIR/ssh" [ "$COPY_SSHD_CONF" = "yes" ] && copy "/etc/ssh/sshd_config" "/config/ssh/" if [ ! -f "/config/ssh/ssh_host_ed25519_key" ]; then