From a7d3dd772bac6a51ed47659619290156f1e6d79a Mon Sep 17 00:00:00 2001 From: bunker-admin Date: Thu, 21 May 2026 10:36:28 -0600 Subject: [PATCH] chore(release): ship scripts/lib/ + classify upgrade-stash-cleanup.sh MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two release-build fixes paired with the Approach A changes: 1. Add upgrade-stash-cleanup.sh to RUNTIME_SCRIPTS so it ships in the release tarball. Tenants need it to be able to recover from stale upgrade-* git stashes on their own hosts. 2. Copy scripts/lib/ wholesale into the staged release tree. Without this, upgrade.sh's `. scripts/lib/mkdocs-snapshot.sh` source line silently fails on release installs (the file isn't there), and the pre-upgrade tenant-docs snapshot wouldn't fire — defeating the no-regrets fallback. Bunker Admin --- scripts/build-release.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/build-release.sh b/scripts/build-release.sh index b49579a..adf6782 100755 --- a/scripts/build-release.sh +++ b/scripts/build-release.sh @@ -126,7 +126,7 @@ RUNTIME_SCRIPTS=( install.sh nocodb-init.sh gitea-init.sh mkdocs-entrypoint.sh backup.sh restore.sh - upgrade.sh upgrade-check.sh upgrade-watcher.sh + upgrade.sh upgrade-check.sh upgrade-watcher.sh upgrade-stash-cleanup.sh uninstall.sh test-deployment.sh validate-env.sh pangolin-teardown.sh ccp-deregister.sh register-with-ccp.sh update-env.sh @@ -178,6 +178,13 @@ if [[ -f "$PROJECT_DIR/scripts/mkdocs-build-trigger.py" ]]; then cp "$PROJECT_DIR/scripts/mkdocs-build-trigger.py" "$STAGE_DIR/scripts/" fi +# Shared shell libraries (scripts/lib/) — sourced by upgrade.sh + image-upgrade.sh. +# Whole directory ships verbatim; safe because nothing executable lives here +# besides the .sh helpers that the runtime scripts depend on. +if [[ -d "$PROJECT_DIR/scripts/lib" ]]; then + cp -a "$PROJECT_DIR/scripts/lib" "$STAGE_DIR/scripts/" +fi + # Systemd units if [[ -d "$PROJECT_DIR/scripts/systemd" ]]; then cp -r "$PROJECT_DIR/scripts/systemd" "$STAGE_DIR/scripts/"