53 lines
1.5 KiB
YAML
53 lines
1.5 KiB
YAML
name: Build and Push Docker Image
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository with submodules
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
token: ${{ secrets.ACCESS_TOKEN }}
|
|
|
|
- name: Verify submodule
|
|
run: |
|
|
git submodule status
|
|
ls -la src/modules/db
|
|
|
|
- name: Login to Registry
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: gitea.spilum.net
|
|
username: ${{ secrets.REGISTRY_USER }}
|
|
password: ${{ secrets.REGISTRY_PASSWORD }}
|
|
|
|
- name: Build Docker Image
|
|
env:
|
|
BRANCH_NAME: ${{ github.ref_name }}
|
|
SHORT_HASH: ${{ github.sha }}
|
|
run: |
|
|
docker build \
|
|
--build-arg BUILD_IDENTIFIER=${SHORT_HASH:0:5} \
|
|
-t gitea.spilum.net/spilum.net/mtf-backend:${BRANCH_NAME}-${SHORT_HASH:0:5} .
|
|
|
|
docker tag \
|
|
gitea.spilum.net/spilum.net/mtf-backend:${BRANCH_NAME}-${SHORT_HASH:0:5} \
|
|
gitea.spilum.net/spilum.net/mtf-backend:${BRANCH_NAME}-latest
|
|
|
|
- name: Push Docker Image
|
|
env:
|
|
BRANCH_NAME: ${{ github.ref_name }}
|
|
SHORT_HASH: ${{ github.sha }}
|
|
run: |
|
|
docker push gitea.spilum.net/spilum.net/mtf-backend:${BRANCH_NAME}-${SHORT_HASH:0:5}
|
|
docker push gitea.spilum.net/spilum.net/mtf-backend:${BRANCH_NAME}-latest
|
|
|
|
- name: Log out from registry
|
|
if: always()
|
|
run: docker logout gitea.spilum.net |