build fix
Some checks failed
ci/woodpecker/push/fx/1 Pipeline failed
ci/woodpecker/push/db Pipeline was successful
ci/woodpecker/push/fx/2 Pipeline failed
ci/woodpecker/push/nats Pipeline was successful

This commit is contained in:
Stephan D
2025-11-07 20:34:28 +01:00
parent 36f48331b4
commit 2e23e647f8
3 changed files with 86 additions and 154 deletions

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env bash
set -euo pipefail
regen_env_version() {
echo "[fx-pipeline] regenerating .env.version defaults" >&2
local git_rev branch app_v build_date build_user
if [[ -n "${WOODPECKER_COMMIT:-}" ]]; then
git_rev="$(printf '%s' "${WOODPECKER_COMMIT}" | cut -c1-7)"
elif command -v git >/dev/null 2>&1; then
git_rev="$(git rev-parse --short HEAD 2>/dev/null || echo dev)"
else
git_rev="dev"
fi
if [[ -n "${WOODPECKER_BRANCH:-}" ]]; then
branch="${WOODPECKER_BRANCH}"
elif command -v git >/dev/null 2>&1; then
branch="$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo local)"
else
branch="local"
fi
if [[ -f version ]]; then
app_v="$(cat version 2>/dev/null || echo dev)"
else
app_v="dev"
fi
build_date="$(date -u +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || echo unknown)"
build_user="${WOODPECKER_MACHINE:-woodpecker}"
printf "GIT_REV=%s\nBUILD_BRANCH=%s\nAPP_V=%s\nBUILD_DATE=%s\nBUILD_USER=%s\n" \
"$git_rev" "$branch" "$app_v" "$build_date" "$build_user" > .env.version
}
ensure_env_version() {
if [[ ! -s ./.env.version ]]; then
regen_env_version
return
fi
local tmp
tmp="$(mktemp)"
if ! grep -E '^[[:space:]]*[A-Za-z_][A-Za-z0-9_]*=' ./.env.version >"$tmp"; then
rm -f "$tmp"
regen_env_version
return
fi
if [[ ! -s "$tmp" ]]; then
rm -f "$tmp"
regen_env_version
return
fi
mv "$tmp" ./.env.version
}
ensure_env_version