Generate version and commit refs for built docker image

This commit is contained in:
ErickSkrauch 2023-12-13 01:09:21 +01:00
parent 3526570dd3
commit 8959e53270
No known key found for this signature in database
GPG Key ID: 669339FCBB30EE0E
2 changed files with 19 additions and 0 deletions

View File

@ -29,6 +29,18 @@ jobs:
type=semver,pattern={{major}}
type=edge,branch=${{ github.event.repository.default_branch }}
- id: version
name: Set up build version
run: |
if [[ $GITHUB_REF_TYPE == "tag" ]]; then
VERSION=${GITHUB_REF#refs/tags/}
else
BRANCH_NAME=${GITHUB_REF#refs/heads/}
SHORT_SHA=$(git rev-parse --short $GITHUB_SHA)
VERSION="${BRANCH_NAME}-${SHORT_SHA}"
fi
echo "version=$VERSION" >> $GITHUB_ENV
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
@ -48,3 +60,6 @@ jobs:
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64,linux/arm64
build-args: |
VERSION=${{ steps.version.output.version }}
COMMIT=${{ github.ref }}

View File

@ -2,6 +2,9 @@
FROM golang:1.21-alpine AS builder
ARG VERSION=unversioned
ARG COMMIT=unspecified
COPY . /build
WORKDIR /build
RUN go mod download
@ -9,6 +12,7 @@ RUN go mod download
RUN CGO_ENABLED=0 \
go build \
-trimpath \
-ldflags "-X github.com/elyby/chrly/version.version=$VERSION -X github.com/elyby/chrly/version.commit=$COMMIT" \
-ldflags="-w -s" \
-o chrly \
main.go