From 32ab2ada091afe86de8f81a06e68ded315cc96cb Mon Sep 17 00:00:00 2001 From: Hussnain Date: Wed, 5 Apr 2023 11:04:18 +0500 Subject: [PATCH] Updated github actions to push to ghcr and dockerHub --- .github/workflows/pull_request.yaml | 45 ++++++++++++++++++++++------ .github/workflows/push.yaml | 46 +++++++++++++++++++++++------ 2 files changed, 73 insertions(+), 18 deletions(-) diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index 798467f..19ae53b 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -87,18 +87,17 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - - name: Login to Docker registry ${{env.REGISTRY}} - uses: docker/login-action@v1.14.1 + - name: Login to Docker Registry + uses: docker/login-action@v1 with: - registry: ${{env.REGISTRY}} - username: ${{github.actor}} - password: ${{secrets.GITHUB_TOKEN}} + username: ${{ secrets.STAKATER_DOCKERHUB_USERNAME }} + password: ${{ secrets.STAKATER_DOCKERHUB_PASSWORD }} - - name: Generate image repository path + - name: Generate image repository path for Docker registry run: | - echo IMAGE_REPOSITORY=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV + echo DOCKER_IMAGE_REPOSITORY=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV - - name: Build and Push Docker Image + - name: Build and Push Docker Image to Docker registry uses: docker/build-push-action@v2 with: context: . @@ -109,7 +108,35 @@ jobs: cache-to: type=inline platforms: linux/amd64,linux/arm,linux/arm64 tags: | - ${{ env.IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.GIT_TAG }} + ${{ env.DOCKER_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.GIT_TAG }} + labels: | + org.opencontainers.image.source=${{ github.event.repository.clone_url }} + org.opencontainers.image.created=${{ steps.prep.outputs.created }} + org.opencontainers.image.revision=${{ github.sha }} + + - name: Login to ghcr registry + uses: docker/login-action@v1.14.1 + with: + registry: ${{env.REGISTRY}} + username: ${{github.actor}} + password: ${{secrets.GITHUB_TOKEN}} + + - name: Generate image repository path for ghcr registry + run: | + echo GHCR_IMAGE_REPOSITORY=${{env.REGISTRY}}/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV + + - name: Build and Push Docker Image to ghcr registry + uses: docker/build-push-action@v2 + with: + context: . + file: ${{ env.DOCKER_FILE_PATH }} + pull: true + push: true + build-args: BUILD_PARAMETERS=${{ env.BUILD_PARAMETERS }} + cache-to: type=inline + platforms: linux/amd64,linux/arm,linux/arm64 + tags: | + ${{ env.GHCR_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.GIT_TAG }} labels: | org.opencontainers.image.source=${{ github.event.repository.clone_url }} org.opencontainers.image.created=${{ steps.prep.outputs.created }} diff --git a/.github/workflows/push.yaml b/.github/workflows/push.yaml index 10450fa..9b72207 100644 --- a/.github/workflows/push.yaml +++ b/.github/workflows/push.yaml @@ -84,17 +84,17 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - - name: Login to Docker registry ${{env.REGISTRY}} - uses: docker/login-action@v1.14.1 + - name: Login to Docker Registry + uses: docker/login-action@v1 with: - registry: ${{env.REGISTRY}} - username: ${{github.actor}} - password: ${{secrets.GITHUB_TOKEN}} + username: ${{ secrets.STAKATER_DOCKERHUB_USERNAME }} + password: ${{ secrets.STAKATER_DOCKERHUB_PASSWORD }} - - name: Generate image repository path + - name: Generate image repository path for Docker registry run: | - echo IMAGE_REPOSITORY=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV - - name: Build and push + echo DOCKER_IMAGE_REPOSITORY=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV + + - name: Build and Push Docker Image to Docker registry uses: docker/build-push-action@v2 with: context: . @@ -105,7 +105,35 @@ jobs: cache-to: type=inline platforms: linux/amd64,linux/arm,linux/arm64 tags: | - ${{ env.IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.new_tag }} + ${{ env.DOCKER_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.new_tag }} + labels: | + org.opencontainers.image.source=${{ github.event.repository.clone_url }} + org.opencontainers.image.created=${{ steps.prep.outputs.created }} + org.opencontainers.image.revision=${{ github.sha }} + + - name: Login to ghcr registry + uses: docker/login-action@v1.14.1 + with: + registry: ${{env.REGISTRY}} + username: ${{github.actor}} + password: ${{secrets.GITHUB_TOKEN}} + + - name: Generate image repository path for ghcr registry + run: | + echo GHCR_IMAGE_REPOSITORY=${{env.REGISTRY}}/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV + + - name: Build and Push Docker Image to ghcr registry + uses: docker/build-push-action@v2 + with: + context: . + file: ${{ env.DOCKER_FILE_PATH }} + pull: true + push: true + build-args: BUILD_PARAMETERS=${{ env.BUILD_PARAMETERS }} + cache-to: type=inline + platforms: linux/amd64,linux/arm,linux/arm64 + tags: | + ${{ env.GHCR_IMAGE_REPOSITORY }}:${{ steps.generate_tag.outputs.new_tag }} labels: | org.opencontainers.image.source=${{ github.event.repository.clone_url }} org.opencontainers.image.created=${{ steps.prep.outputs.created }}