1
- # This GitHub action can publish assets for release when a tag is created.
2
- # Currently its setup to run on any tag that matches the pattern "v*" (ie. v0.1.0).
3
- #
4
- # This uses an action (crazy-max/ghaction-import-gpg) that assumes you set your
5
- # private key in the `GPG_PRIVATE_KEY` secret and passphrase in the `PASSPHRASE`
6
- # secret. If you would rather own your own GPG handling, please fork this action
7
- # or use an alternative one for key handling.
8
- #
9
- # You will need to pass the `--batch` flag to `gpg` in your signing step
10
- # in `goreleaser` to indicate this is being used in a non-interactive mode.
11
- #
12
- name : release
1
+ # Terraform Provider release workflow.
2
+ name : Release
3
+
4
+ # This GitHub action creates a release when a tag that matches the pattern
5
+ # "v*" (e.g. v0.1.0) is created.
13
6
on :
14
7
push :
15
8
tags :
16
9
- ' v*'
10
+
11
+ # Releases need permissions to read and write the repository contents.
12
+ # GitHub considers creating releases and uploading assets as writing contents.
17
13
permissions :
18
14
contents : write
15
+
19
16
jobs :
20
17
goreleaser :
21
18
runs-on : ubuntu-latest
22
19
steps :
23
- -
24
- name : Checkout
25
- uses : actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
26
- -
27
- name : Unshallow
28
- run : git fetch --prune --unshallow
29
- -
30
- name : Set up Go
31
- uses : actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # v3.5.0
20
+ - uses : actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
21
+ with :
22
+ # Allow goreleaser to access older tag information.
23
+ fetch-depth : 0
24
+ - uses : actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
32
25
with :
33
26
go-version-file : ' go.mod'
34
27
cache : true
35
- -
36
- name : Import GPG key
37
- uses : crazy-max/ghaction-import-gpg@111c56156bcc6918c056dbef52164cfa583dc549 # v5.2.0
28
+ - name : Import GPG key
29
+ uses : crazy-max/ghaction-import-gpg@01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4 # v6.1.0
38
30
id : import_gpg
39
31
with :
40
32
gpg_private_key : ${{ secrets.GPG_PRIVATE_KEY }}
41
33
passphrase : ${{ secrets.PASSPHRASE }}
42
- -
43
- name : Run GoReleaser
44
- uses : goreleaser/goreleaser-action@f82d6c1c344bcacabba2c841718984797f664a6b # v4.2.0
34
+ - name : Run GoReleaser
35
+ uses : goreleaser/goreleaser-action@286f3b13b1b49da4ac219696163fb8c1c93e1200 # v6.0.0
45
36
with :
46
- version : latest
47
- args : release --rm-dist
37
+ args : release --clean
48
38
env :
49
- GPG_FINGERPRINT : ${{ steps.import_gpg.outputs.fingerprint }}
50
- # GitHub sets this automatically
39
+ # GitHub sets the GITHUB_TOKEN secret automatically.
51
40
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
41
+ GPG_FINGERPRINT : ${{ steps.import_gpg.outputs.fingerprint }}
0 commit comments