Run build on PRs to validate changes

To avoid a mess, do not publish packages on PR builds.
This commit is contained in:
Philipp Grathwohl 2021-11-27 21:34:22 +01:00
parent b7a0f0ea24
commit 717f4da183

View file

@ -6,6 +6,7 @@ on:
- main - main
- master - master
- development - development
pull_request:
env: env:
image-name: ghcr.io/${{ github.repository_owner }}/craftbeerpi4 image-name: ghcr.io/${{ github.repository_owner }}/craftbeerpi4
@ -49,18 +50,22 @@ jobs:
id: prep id: prep
run: | run: |
PUBLISH_IMAGE=false
TAGS="${{ env.image-name }}:dev"
if [[ $GITHUB_REF_NAME == master ]] || [[ $GITHUB_REF_NAME == main ]]; then if [[ $GITHUB_REF_NAME == master ]] || [[ $GITHUB_REF_NAME == main ]]; then
# when building master/main use :latest tag and the version number # when building master/main use :latest tag and the version number
# from the cbpi/__init__.py file # from the cbpi/__init__.py file
VERSION=$(grep -o -E "(([0-9]{1,2}[.]?){3}[0-9]+)" cbpi/__init__.py) VERSION=$(grep -o -E "(([0-9]{1,2}[.]?){3}[0-9]+)" cbpi/__init__.py)
TAGS="${{ env.image-name }}:latest,${{ env.image-name }}:v${VERSION}" TAGS="${{ env.image-name }}:latest,${{ env.image-name }}:v${VERSION}"
else PUBLISH_IMAGE=true
# otherwise just use :dev tag elif [[ $GITHUB_REF_NAME == development ]]; then
TAGS="${{ env.image-name }}:dev" PUBLISH_IMAGE=true
fi fi
# Set output parameters. # Set output parameters.
echo ::set-output name=tags::${TAGS} echo ::set-output name=tags::${TAGS}
echo ::set-output name=publish_image::${PUBLISH_IMAGE}
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@master uses: docker/setup-qemu-action@master
@ -85,7 +90,7 @@ jobs:
context: . context: .
file: ./Dockerfile file: ./Dockerfile
platforms: linux/amd64,linux/arm64 platforms: linux/amd64,linux/arm64
push: true push: ${{ steps.prep.outputs.publish_image }}
tags: ${{ steps.prep.outputs.tags }} tags: ${{ steps.prep.outputs.tags }}
labels: | labels: |
org.opencontainers.image.title=${{ github.event.repository.name }} org.opencontainers.image.title=${{ github.event.repository.name }}