From f8f87c2aebf4f6844dd1a1f96c8f679145cb6cb5 Mon Sep 17 00:00:00 2001 From: Irving Popovetsky Date: Mon, 24 Feb 2025 16:05:37 -0800 Subject: [PATCH 1/2] Use Github Actions to build and publish docker images to GHCR Signed-off-by: Irving Popovetsky --- .github/workflows/publish-docker-ghcr.yml | 43 +++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/publish-docker-ghcr.yml diff --git a/.github/workflows/publish-docker-ghcr.yml b/.github/workflows/publish-docker-ghcr.yml new file mode 100644 index 0000000000..54fe04452c --- /dev/null +++ b/.github/workflows/publish-docker-ghcr.yml @@ -0,0 +1,43 @@ +name: Publish + +on: + push: + tags: + - '*' + +jobs: + publish: + name: Publish + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version: '1.23.x' + + - uses: ko-build/setup-ko@v0.7 + + - name: Set version variables + run: | + VERSION=${GITHUB_REF#refs/tags/} + VERSION=${VERSION#v} # Remove 'v' prefix if present + echo "VERSION=${VERSION}" >> $GITHUB_ENV + MAJOR_VERSION=$(echo $VERSION | cut -d. -f1) + echo "MAJOR_VERSION=${MAJOR_VERSION}" >> $GITHUB_ENV + MINOR_VERSION=$(echo $VERSION | cut -d. -f1,2) + echo "MINOR_VERSION=${MINOR_VERSION}" >> $GITHUB_ENV + # Set the build ID for the binary + echo "GOFLAGS=-ldflags=-X=main.BuildID=${VERSION}" >> $GITHUB_ENV + # Set the source build date for ko + echo "SOURCE_DATE_EPOCH=$(git log -1 --format=%ct)" >> $GITHUB_ENV + + - name: Build and push Docker images using ko + run: > + ko build + --bare + --platform=linux/amd64,linux/arm64 + --tags="${VERSION},${MINOR_VERSION},${MAJOR_VERSION},latest" + --image-label org.opencontainers.image.source=https://github.com/honeycombio/refinery + --image-label org.opencontainers.image.licenses=Apache-2.0 + --image-label org.opencontainers.image.revision=${{ github.sha }} + ./cmd/refinery From 44dc931c1ca4911605a919d32c7f791457478701 Mon Sep 17 00:00:00 2001 From: Irving Popovetsky Date: Tue, 25 Feb 2025 18:07:31 -0800 Subject: [PATCH 2/2] Use the release event instead Signed-off-by: Irving Popovetsky --- .github/workflows/publish-docker-ghcr.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish-docker-ghcr.yml b/.github/workflows/publish-docker-ghcr.yml index 54fe04452c..0a70be87c4 100644 --- a/.github/workflows/publish-docker-ghcr.yml +++ b/.github/workflows/publish-docker-ghcr.yml @@ -1,9 +1,8 @@ name: Publish on: - push: - tags: - - '*' + release: + types: [published] jobs: publish: