diff --git a/.gitea/workflows/dockerbuild.yml b/.gitea/workflows/dockerbuild.yml new file mode 100644 index 0000000..5f9cf30 --- /dev/null +++ b/.gitea/workflows/dockerbuild.yml @@ -0,0 +1,42 @@ +name: Build and Push Docker Image + +on: + push: + branches: [ main ] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Login to Registry + uses: docker/login-action@v2 + with: + registry: git.phyllo.me + username: ${{ secrets.REGISTRY_USER }} + password: ${{ secrets.REGISTRY_PASSWORD }} + + - name: Build Docker Image + env: + BRANCH_NAME: ${{ github.ref_name }} + SHORT_HASH: ${{ github.sha }} + run: | + # Build the image with the commit hash tag + docker build --build-arg BUILD_IDENTIFIER=${SHORT_HASH:0:5} -t https://git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} . + + # Tag the same image as "latest" + docker tag https://git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} https://git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-latest + + - name: Push Docker Images + env: + BRANCH_NAME: ${{ github.ref_name }} + SHORT_HASH: ${{ github.sha }} + run: | + docker push https://git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} + docker push https://git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-latest + + - name: Log out from registry + if: always() + run: docker logout git.phyllo.me