4NK_dev/.gitea/workflows/dev-test.yml

45 lines
1.3 KiB
YAML

name: dev-test
on:
push:
tags:
- dev-test
branches:
- 'dev-test*'
paths:
- '.ci/tag.env'
jobs:
build-and-push:
runs-on: docker
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Gitea Registry
uses: docker/login-action@v3
with:
registry: git.4nkweb.com
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Sync submodules branches
run: |
bash scripts/sync_submodules.sh
- name: Build and push images
env:
REGISTRY: git.4nkweb.com
run: |
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"