Skip to content

Commit

Permalink
Use goreleaser to push release
Browse files Browse the repository at this point in the history
Without this, goreleaser is broken, and does not properly push
neither on PR or on tag. This is due to a premature merge of
a previous MR.

This fixes it by ensuring the workflow works. It might need
a few iterations to test the tag system is working as expected.
  • Loading branch information
evrardjp-cagip committed Dec 17, 2024
1 parent e4050fd commit ff5da53
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 30 deletions.
48 changes: 21 additions & 27 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,36 @@
name: build
name: pr

on:
push:
branches:
- 'master'
tags:
- 'v*'
pull_request:
branches:
- 'master'

env:
REGISTRY: ghcr.io

jobs:
release:
name: Create Build
pr-tests:
name: Build and test images
runs-on: ubuntu-latest
strategy:
matrix:
component: [webhook, api, operator]
arch: [amd64]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: cagip/kubi-${{ matrix.component }}

- name: Find current tag version
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
id: tags

- uses: actions/setup-go@v5
with:
go-version: '1.23'

- name: run tests
run: make test

- uses: goreleaser/goreleaser-action@v6
if: github.event_name == 'pull_request'
with:
distribution: goreleaser
version: v2.5.0
Expand All @@ -40,18 +39,13 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ORG: ${{ github.REPOSITORY_OWNER }}

- name: Login to DockerHub
if: github.event_name != 'pull_request'
- name: Login to container registry
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- uses: goreleaser/goreleaser-action@v6
if: github.event_name != 'pull_request'
with:
distribution: goreleaser
version: v2.5.0
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Push development image into ghcr (packages)
run: |
docker push ${{ env.REGISTRY }}/${{ github.REPOSITORY_OWNER }}/kubi-${{ matrix.component }}:${{ steps.tags.outputs.sha_short }}-${{ matrix.arch }}
42 changes: 39 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,65 @@
name: release
name: Tag repo

on:
push:
tags:
- "*"

env:
REGISTRY: docker.io

permissions:
contents: write
contents: read

jobs:
release:
permissions:
id-token: write
contents: write
packages: write
runs-on: ubuntu-latest
strategy:
matrix:
component: [webhook, api, operator]
arch: [amd64]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- run: git fetch --force --tags

- name: Find current sha version
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
id: sha

- name: Find current tag version
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
id: tag

- uses: actions/setup-go@v5
with:
go-version: '1.23'

- name: run tests to ensure it is still releasable
run: make test

- uses: goreleaser/goreleaser-action@v6
with:
distribution: goreleaser
version: v2.5.0
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ORG: ${{ github.repository_owner }}

- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Push development image into dockerhub
run: |
docker tag ghcr.io/cagip/kubi-${{ matrix.component }}:${{ steps.sha.outputs.sha_short }}-${{ matrix.arch }} ca-gip/kubi-${{ matrix.component }}:${{ steps.sha.outputs.sha_short }}-${{ matrix.arch }}
docker push ca-gip/kubi-${{ matrix.component }}:${{ steps.sha.outputs.sha_short }}-${{ matrix.arch }}
docker tag ghcr.io/cagip/kubi-${{ matrix.component }}:${{ steps.sha.outputs.sha_short }}-${{ matrix.arch }} ca-gip/kubi-${{ matrix.component }}:${{ steps.tag.outputs.version }}
docker push ca-gip/kubi-${{ matrix.component }}:${{ steps.tag.outputs.version }}

0 comments on commit ff5da53

Please sign in to comment.