Skip to content

Commit d5bc82f

Browse files
authored
Update release workflow (#114)
1 parent 8d692bb commit d5bc82f

File tree

2 files changed

+68
-70
lines changed

2 files changed

+68
-70
lines changed

.github/workflows/docker.yml

Lines changed: 0 additions & 61 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 68 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,53 +9,112 @@ jobs:
99
release:
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@v2
12+
- name: Checkout
13+
uses: actions/checkout@v2
1314
with:
1415
fetch-depth: 0
1516

16-
- uses: actions/setup-go@v2
17+
- name: Set up Go
18+
uses: actions/setup-go@v2
1719
with:
1820
go-version: 1.15
1921

20-
- uses: actions-ecosystem/action-get-merged-pull-request@v1
22+
- name: Set up QEMU
23+
uses: docker/setup-qemu-action@v1
24+
25+
- name: Set up Docker Buildx
26+
uses: docker/setup-buildx-action@v1
27+
with:
28+
version: latest
29+
buildkitd-flags: --debug
30+
31+
- name: Cache Go modules
32+
uses: actions/cache@v2
33+
with:
34+
path: ~/go/pkg/mod
35+
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
36+
restore-keys: |
37+
${{ runner.os }}-go-
38+
39+
- name: Cache Docker layers
40+
uses: actions/cache@v2
41+
with:
42+
path: /tmp/.buildx/cache
43+
key: ${{ runner.os }}-buildx-${{ github.sha }}
44+
restore-keys: |
45+
${{ runner.os }}-buildx-
46+
47+
- name: Get pull request
48+
uses: actions-ecosystem/action-get-merged-pull-request@v1
2149
id: get-merged-pull-request
2250
with:
2351
github_token: ${{ secrets.GITHUB_TOKEN }}
2452

25-
- uses: actions-ecosystem/action-release-label@v1
53+
- name: Get release label
54+
uses: actions-ecosystem/action-release-label@v1
2655
id: release-label
2756
if: ${{ steps.get-merged-pull-request.outputs.title != null }}
2857
with:
2958
labels: ${{ steps.get-merged-pull-request.outputs.labels }}
3059

31-
- uses: actions-ecosystem/action-get-latest-tag@v1
60+
- name: Get latest Git tag
61+
uses: actions-ecosystem/action-get-latest-tag@v1
3262
id: get-latest-tag
3363
if: ${{ steps.release-label.outputs.level != null }}
3464
with:
3565
semver_only: true
3666

37-
- uses: actions-ecosystem/action-bump-semver@v1
67+
- name: Bump up version
68+
uses: actions-ecosystem/action-bump-semver@v1
3869
id: bump-semver
3970
if: ${{ steps.release-label.outputs.level != null }}
4071
with:
4172
current_version: ${{ steps.get-latest-tag.outputs.tag }}
4273
level: ${{ steps.release-label.outputs.level }}
4374

44-
- uses: actions-ecosystem/action-push-tag@v1
75+
- name: Push new Git tag
76+
uses: actions-ecosystem/action-push-tag@v1
4577
if: ${{ steps.bump-semver.outputs.new_version != null }}
4678
with:
4779
tag: ${{ steps.bump-semver.outputs.new_version }}
4880
message: "${{ steps.bump-semver.outputs.new_version }}: PR #${{ steps.get-merged-pull-request.outputs.number }} ${{ steps.get-merged-pull-request.outputs.title }}"
4981

50-
- uses: goreleaser/goreleaser-action@v2
82+
- name: Release binaries with GoReleaser
83+
uses: goreleaser/goreleaser-action@v2
5184
if: ${{ steps.release-label.outputs.level == 'major' || steps.release-label.outputs.level == 'minor' || steps.release-label.outputs.level == 'patch' }}
5285
with:
5386
version: latest
5487
args: release --rm-dist
5588
env:
5689
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5790

58-
- uses: actions-ecosystem/action-create-comment@v1
91+
- name: Login to DockerHub
92+
uses: docker/login-action@v1
93+
with:
94+
username: ${{ github.repository_owner }}
95+
password: ${{ secrets.DOCKER_PASSWORD }}
96+
97+
- name: Login to GitHub Container Registry
98+
uses: docker/login-action@v1
99+
with:
100+
registry: ghcr.io
101+
username: ${{ github.repository_owner }}
102+
password: ${{ secrets.GHCR_TOKEN }}
103+
104+
- name: Build and push Docker images
105+
uses: docker/build-push-action@v2
106+
with:
107+
push: true
108+
cache-from: type=local,src=/tmp/.buildx/cache
109+
cache-to: type=local,dest=/tmp/.buildx/cache,mode=max
110+
tags: |
111+
${{ github.repository }}:latest
112+
${{ github.repository }}:${{ steps.bump-semver.outputs.new_version }}
113+
ghcr.io/${{ github.repository }}:latest
114+
ghcr.io/${{ github.repository }}:${{ steps.bump-semver.outputs.new_version }}
115+
116+
- name: Post release comment
117+
uses: actions-ecosystem/action-create-comment@v1
59118
if: ${{ steps.bump-semver.outputs.new_version != null }}
60119
with:
61120
github_token: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)