name: Build and Push Docker Image on: push: branches: [ main ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - name: Login to Registry uses: docker/login-action@v3 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 git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} . # Tag the same image as "latest" docker tag git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} 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 git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-${SHORT_HASH:0:5} docker push git.phyllo.me/devops/fedora-runner-image:${BRANCH_NAME}-latest - name: Log out from registry if: always() run: docker logout git.phyllo.me