From 425740cb61d619c31f2d9dab32a7bfd21dc9bf20 Mon Sep 17 00:00:00 2001 From: Praveen Date: Tue, 8 Oct 2024 12:13:32 +0530 Subject: [PATCH] Update build-and-publish.yml --- .github/workflows/build-and-publish.yml | 29 +++++++++++++++++++------ 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-and-publish.yml b/.github/workflows/build-and-publish.yml index 4237f6f..0050781 100644 --- a/.github/workflows/build-and-publish.yml +++ b/.github/workflows/build-and-publish.yml @@ -2,10 +2,12 @@ name: Build and Publish on: push: + branches: [ 'main' ] # Trigger on push to 'main' + tags: [ '[0-9]+.[0-9]+.[0-9]+' ] # Trigger on version tags like '0.1.0' jobs: build-and-publish: - name: Build and Publish + name: Build and Publish Docker image runs-on: ubuntu-latest steps: - name: Checkout code @@ -17,18 +19,31 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Log in to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@v5 with: - images: ${{ vars.DOCKER_ORG }}/${{ github.event.repository.name }} + images: | + ${{ vars.DOCKER_ORG }}/${{ github.event.repository.name }} + ghcr.io/${{ github.repository }} tags: | - type=ref,event=branch - type=ref,event=tag - # set latest tag for master branch - type=raw,value=latest,enable=${{ github.ref == format('refs/heads/{0}', 'main') }} + type=ref,event=branch # Tag with branch name + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + # labels: | + # org.opencontainers.image.source=${{ github.repository }} + # org.opencontainers.image.revision=${{ github.sha }} + # org.opencontainers.image.created=${{ github.event.head_commit.timestamp }} - - name: Build and push Docker image + - name: Build and push Docker image to Docker Hub and GHCR uses: docker/build-push-action@v5 with: context: .