From 52aa008f4d03535df4aa212b2cf8880e872a51a1 Mon Sep 17 00:00:00 2001 From: Andrea Giannantonio Date: Tue, 19 Dec 2023 14:28:01 +0100 Subject: [PATCH] ci: add publish package semver --- .github/workflows/publish.yml | 39 +++++++++++++++++++++++++++++++++++ .github/workflows/test.yml | 14 +++++++------ 2 files changed, 47 insertions(+), 6 deletions(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..d7e4a519 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,39 @@ +name: publish + +on: + push: + tags: + - '*' +env: + TEST_TAG: ghcr.io/immobiliare/inca:test + LATEST_TAG: ghcr.io/immobiliare/inca:latest + NEW_TAG: ghcr.io/immobiliare/inca:${{ GITHUB_REF_NAME }} + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-qemu-action@v3 + - uses: docker/setup-buildx-action@v3 + - uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GH_SRE_TOKEN }} + - name: Build and export to Docker + uses: docker/build-push-action@v5 + with: + context: . + load: true + tags: ${{ env.TEST_TAG }} + - name: Test Docker Image + run: | + docker run --rm ${{ env.TEST_TAG }} + - name: Build and push Docker Image + uses: docker/build-push-action@v5 + with: + context: . + platforms: linux/amd64,linux/arm64 + tags: ${{ env.NEW_TAGNEW_TAG }}, ${{ env.LATEST_TAG }} + push: true diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8a2b374f..56302f30 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -35,15 +35,17 @@ jobs: if: success() && github.event_name == 'push' && github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: docker/setup-qemu-action@v2 - - uses: docker/setup-buildx-action@v2 - - uses: docker/login-action@v2 + - uses: actions/checkout@v4 + - uses: docker/setup-qemu-action@v3 + - uses: docker/setup-buildx-action@v3 + - uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GH_SRE_TOKEN }} - - uses: docker/build-push-action@v3 + - uses: docker/build-push-action@v5 with: - tags: ghcr.io/immobiliare/inca:latest + context: . + platforms: linux/amd64,linux/arm64 + tags: ghcr.io/immobiliare/inca:next push: true