name: Replace Build Placeholders description: > Ersetzt {{BUILD_VAR_*}}-Platzhalter in allen Textdateien durch Gitea-Actions-Build-Infos (Commit, Branch, Run-Metadaten, …). Sprachunabhängig (reiner Text-Replace, kein Build-Tool-Bezug), kein Input nötig. runs: using: composite steps: - shell: bash run: | set -euo pipefail SHA_SHORT="${GITHUB_SHA:0:7}" BUILD_DATE="$(date -u '+%Y-%m-%dT%H:%M:%SZ')" # Same label as the docker-build image tag: pr- for PRs, else ref name with / -> - REF="${GITHUB_REF:-}" if [[ "$REF" == refs/pull/* ]]; then PR_NUM="${REF#refs/pull/}" REF_LABEL="pr-${PR_NUM%%/*}" else REF_NAME="${GITHUB_REF_NAME:-}" REF_LABEL="${REF_NAME//\//-}" fi declare -A VARS=( [BUILD_VAR_GITHUB_SHA]="${GITHUB_SHA:-}" [BUILD_VAR_GITHUB_REF_NAME]="${GITHUB_REF_NAME:-}" [BUILD_VAR_GITHUB_REF_TYPE]="${GITHUB_REF_TYPE:-}" [BUILD_VAR_GITHUB_REPOSITORY]="${GITHUB_REPOSITORY:-}" [BUILD_VAR_GITHUB_REPOSITORY_OWNER]="${GITHUB_REPOSITORY_OWNER:-}" [BUILD_VAR_GITHUB_RUN_ID]="${GITHUB_RUN_ID:-}" [BUILD_VAR_GITHUB_RUN_NUMBER]="${GITHUB_RUN_NUMBER:-}" [BUILD_VAR_GITHUB_RUN_ATTEMPT]="${GITHUB_RUN_ATTEMPT:-}" [BUILD_VAR_GITHUB_RETENTION_DAYS]="${GITHUB_RETENTION_DAYS:-}" [BUILD_VAR_GITHUB_SERVER_URL]="${GITHUB_SERVER_URL:-}" [BUILD_VAR_GITHUB_EVENT_NAME]="${GITHUB_EVENT_NAME:-}" [BUILD_VAR_GITHUB_BASE_REF]="${GITHUB_BASE_REF:-}" [BUILD_VAR_GITHUB_HEAD_REF]="${GITHUB_HEAD_REF:-}" [BUILD_VAR_GITHUB_ACTION_REF]="${GITHUB_ACTION_REF:-}" [BUILD_VAR_GITHUB_ACTION_REPOSITORY]="${GITHUB_ACTION_REPOSITORY:-}" [BUILD_VAR_GITEA_ACTIONS_RUNNER_VERSION]="${GITEA_ACTIONS_RUNNER_VERSION:-}" [BUILD_VAR_COMMIT_SHA_SHORT]="$SHA_SHORT" [BUILD_VAR_BUILD_DATE]="$BUILD_DATE" [BUILD_VAR_REF_LABEL]="$REF_LABEL" ) SED_ARGS=() for key in "${!VARS[@]}"; do SED_ARGS+=(-e "s|{{${key}}}|${VARS[$key]}|g") done grep -rIl --exclude-dir=.git '' . | xargs -r sed -i "${SED_ARGS[@]}"