1
1
# This GitHub action can publish assets for release when a tag is created.
2
2
# Currently its setup to run on any tag that matches the pattern "v*" (ie. v0.1.0).
3
3
#
4
- # This uses an action (paultyng /ghaction-import-gpg) that assumes you set your
4
+ # This uses an action (hashicorp /ghaction-import-gpg) that assumes you set your
5
5
# private key in the `GPG_PRIVATE_KEY` secret and passphrase in the `PASSPHRASE`
6
6
# secret. If you would rather own your own GPG handling, please fork this action
7
7
# or use an alternative one for key handling.
8
8
#
9
- # You will need to pass the `--batch` flag to `gpg` in your signing step
9
+ # You will need to pass the `--batch` flag to `gpg` in your signing step
10
10
# in `goreleaser` to indicate this is being used in a non-interactive mode.
11
11
#
12
12
name : release
@@ -24,30 +24,36 @@ jobs:
24
24
# Read the .go-version file and output it for other jobs to use.
25
25
- id : go-version
26
26
run : echo "::set-output name=go-version::$(cat .go-version)"
27
-
28
27
goreleaser :
29
28
runs-on : ubuntu-latest
30
29
needs : [go-version]
31
30
steps :
32
- - uses : actions/setup-go@v2
31
+ -
32
+ name : Checkout
33
+
34
+ -
35
+ name : Unshallow
36
+ run : git fetch --prune --unshallow
37
+ -
38
+ name : Set up Go
39
+ uses : actions/setup-go@v2
33
40
with :
34
41
go-version : ${{ needs.go-version.outputs.go-version }}
35
- - uses : actions/checkout@v2
36
- - uses : actions/cache@v2
37
- with :
38
- path : ~/go/pkg/mod
39
- key : ${{ runner.os }}-go${{ env.GO_VERSION }}-${{ hashFiles('go.sum') }}-no-tools
40
- - name : Unshallow
41
- run : git fetch --prune --unshallow
42
- -
uses :
paultyng/[email protected]
42
+ -
43
+ name : Import GPG key
43
44
id : import_gpg
45
+
44
46
env :
47
+ # These secrets will need to be configured for the repository:
45
48
GPG_PRIVATE_KEY : ${{ secrets.GPG_PRIVATE_KEY }}
46
49
PASSPHRASE : ${{ secrets.PASSPHRASE }}
47
- - uses : goreleaser/goreleaser-action@v2
50
+ -
51
+ name : Run GoReleaser
52
+ uses :
goreleaser/[email protected]
48
53
with :
49
54
version : latest
50
55
args : release --rm-dist
51
56
env :
52
57
GPG_FINGERPRINT : ${{ steps.import_gpg.outputs.fingerprint }}
58
+ # GitHub sets this automatically
53
59
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments