From d24f0aacba63dc31bbe59b49f70b0d76901df7c4 Mon Sep 17 00:00:00 2001 From: "Jason R. Rokeach" <1076569+jrokeach@users.noreply.github.com> Date: Tue, 31 Oct 2023 09:26:01 -0400 Subject: [PATCH] Container image tag normalization --- .github/workflows/publish-image.yml | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/.github/workflows/publish-image.yml b/.github/workflows/publish-image.yml index 357ec34..9848b7d 100644 --- a/.github/workflows/publish-image.yml +++ b/.github/workflows/publish-image.yml @@ -3,13 +3,15 @@ name: Publish container image on: push: - release: - types: [published] + branches: + - 'main' + - 'next' tags: - - 'latest' - - 'v[0-9]+' - - 'v[0-9]+.[0-9]+' - - 'v[0-9]+.[0-9]+.[0-9]+' + - 'v*' + pull_request: + branches: + - 'main' + - 'next' # Defines two custom environment variables for the workflow. These are used for the Container registry domain, and a name for the Docker image that this workflow builds. env: @@ -41,6 +43,13 @@ jobs: uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + # set latest tag for default branch + type=raw,value=latest,enable={{is_default_branch}} + type=ref,event=branch + type=ref,event=pr + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} # This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages. # It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository. # It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.