Add image templates to .goreleaser.yaml

Added four Docker image templates in the .goreleaser.yaml file. The newly introduced templates specify the image tags based on the version, making it easier to handle different versions of the Docker image for the "apg-go" project.
This commit is contained in:
Winni Neessen 2024-03-13 23:54:02 +01:00
parent 48a0b6763b
commit 48c352f998
Signed by: wneessen
GPG key ID: 5F3AF39B820C119D
2 changed files with 7 additions and 54 deletions

View file

@ -1,54 +0,0 @@
name: Build and Push Docker Image to Docker Hub
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
REGISTRY: docker.io
IMAGE_NAME: wneessen/apg-go
jobs:
build:
runs-on: docker
steps:
- uses: actions/checkout@v3
- name: Install docker
run: |
apt-get update; apt-get -y install docker; which docker
- name: Build the Docker image
run: sudo docker build --no-cache --force-rm -t apg-go:main .
test:
runs-on: docker
steps:
- uses: actions/checkout@v2
- name: Test the Docker image
run: docker run apg-go:main
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: docker
steps:
- name: Check out the repo
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to Docker Hub
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: "{{defaultContext}}"
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

View file

@ -95,3 +95,10 @@ gitea_urls:
gomod:
mod: mod
dockers:
- image_templates:
- "wneessen/apg-go:{{ .Tag }}"
- "wneessen/apg-go:v{{ .Major }}"
- "wneessen/apg-go:v{{ .Major }}.{{ .Minor }}"
- "wneessen/apg-go:latest"