build fix
This commit is contained in:
59
ci/pipelines/fx/ensure_env_version.sh
Executable file
59
ci/pipelines/fx/ensure_env_version.sh
Executable 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
|
||||
Reference in New Issue
Block a user