diff --git a/.gitea/workflows/dev-test.yml b/.gitea/workflows/dev-test.yml index dfa96d2..f55e773 100644 --- a/.gitea/workflows/dev-test.yml +++ b/.gitea/workflows/dev-test.yml @@ -31,5 +31,14 @@ jobs: env: REGISTRY: git.4nkweb.com run: | - DOCKER_TAG=$(if [ -f .ci/tag.env ]; then source .ci/tag.env && echo "$DOCKER_TAG"; else echo "${GITHUB_REF_NAME:-dev-test}"; fi) + COMMIT_MSG=$(git log -1 --pretty=%B) + FROM_COMMIT=$(printf "%s" "$COMMIT_MSG" | sed -n 's/.*ci:[[:space:]]*docker_tag=\([^ ][^\n]*\).*/\1/p' | head -n1) + if [ -n "$FROM_COMMIT" ]; then + DOCKER_TAG="$FROM_COMMIT" + elif [ -f .ci/tag.env ]; then + # shellcheck disable=SC1091 + . .ci/tag.env + else + DOCKER_TAG="${GITHUB_REF_NAME:-dev-test}" + fi bash scripts/build_and_push.sh "$DOCKER_TAG"