1name: goreleaser-publish
2
3on:
4 push:
5 tags:
6 - v*.*.*
7
8concurrency:
9 group: goreleaser
10 cancel-in-progress: true
11
12permissions:
13 contents: write
14 packages: write
15
16jobs:
17 goreleaser:
18 runs-on: ubuntu-latest
19 env:
20 DOCKER_CLI_EXPERIMENTAL: enabled
21 steps:
22 - name: Checkout
23 uses: actions/checkout@v2
24 with:
25 fetch-depth: 0
26
27 - name: Set up Go
28 uses: actions/setup-go@v2
29 with:
30 go-version: 1.17
31
32 - name: Login to DockerHub
33 uses: docker/login-action@v1
34 with:
35 username: ${{ secrets.DOCKERHUB_USERNAME }}
36 password: ${{ secrets.DOCKERHUB_TOKEN }}
37
38 - name: Login to GitHub Container Registry
39 uses: docker/login-action@v1
40 with:
41 registry: ghcr.io
42 username: ${{ github.repository_owner }}
43 password: ${{ secrets.GITHUB_TOKEN }}
44
45 - name: Set up QEMU
46 uses: docker/setup-qemu-action@v1
47
48 - name: Set up Docker Buildx
49 id: buildx
50 uses: docker/setup-buildx-action@v1
51
52 - name: Run GoReleaser
53 uses: goreleaser/goreleaser-action@v2
54 with:
55 distribution: goreleaser
56 version: latest
57 args: release --rm-dist --skip-sign
58 env:
59 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60 HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}