Skip to content

Release images

Release images #3

Workflow file for this run

name: Release images
on:
release:
types:
- released
env:
# Use docker.io for Docker Hub if empty
REGISTRY: ghcr.io
# github.repository as <account>/<repo>
IMAGE_BASE: ${{ github.repository }}
jobs:
build:
name: Build and release images
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- id: createImageTag
name: Create image tag
run: |
IMAGE_TAG=$(echo ${{ github.event.release.tag_name }} | sed 's/v//')
echo "imageTag=$IMAGE_TAG" >> $GITHUB_OUTPUT
- id: createImageBase
run: |
echo "imageBase=${IMAGE_BASE,,}" >> $GITHUB_OUTPUT
- name: Setup Docker buildx
uses: docker/setup-buildx-action@v2
- name: Log into registry ${{ env.REGISTRY }}
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and release Docker image
id: build-and-push
uses: docker/build-push-action@v4
with:
context: .
file: build/images/Dockerfile.go-toolset
push: true
tags: ${{env.REGISTRY}}/${{steps.createImageBase.outputs.imageBase}}/go-toolset:${{steps.createImageTag.outputs.imageTag}}