diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 8607a8e5..4c660ae3 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -10,30 +10,41 @@ on: jobs: docker: runs-on: ubuntu-latest + permissions: + packages: write # required to publish docker image + + env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + steps: - name: Checkout uses: actions/checkout@v3 with: submodules: ${{ ! (github.event_name == 'release' && github.event.action == 'published') }} + - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - name: Docker meta + uses: docker/setup-buildx-action@v3 + + - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 with: - images: ghcr.io/pnx-si/geonature-atlas + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | type=ref,event=branch type=ref,event=tag + - name: Login to GHCR - uses: docker/login-action@v2 + uses: docker/login-action@v3 if: github.event_name != 'pull_request' with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and export - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v5 with: context: . target: prod