File tree 3 files changed +99
-46
lines changed
3 files changed +99
-46
lines changed Load Diff This file was deleted.
Original file line number Diff line number Diff line change
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 (hashicorp/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
13
+ on :
14
+ push :
15
+ tags :
16
+ - ' v*'
17
+ jobs :
18
+ goreleaser :
19
+ runs-on : ubuntu-latest
20
+ steps :
21
+ -
22
+ name : Checkout
23
+ uses : actions/checkout@v2
24
+ -
25
+ name : Unshallow
26
+ run : git fetch --prune --unshallow
27
+ -
28
+ name : Set up Go
29
+ uses : actions/setup-go@v2
30
+ with :
31
+ go-version : 1.16
32
+ -
33
+ name : Import GPG key
34
+ id : import_gpg
35
+
36
+ env :
37
+ # These secrets will need to be configured for the repository:
38
+ GPG_PRIVATE_KEY : ${{ secrets.GPG_PRIVATE_KEY }}
39
+ PASSPHRASE : ${{ secrets.PASSPHRASE }}
40
+ -
41
+ name : Run GoReleaser
42
+ uses : goreleaser/goreleaser-action@v2
43
+ with :
44
+ version : latest
45
+ args : release --rm-dist
46
+ env :
47
+ GPG_FINGERPRINT : ${{ steps.import_gpg.outputs.fingerprint }}
48
+ # GitHub sets this automatically
49
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
Original file line number Diff line number Diff line change
1
+ # Visit https://goreleaser.com for documentation on how to customize this
2
+ # behavior.
3
+ builds :
4
+ - env :
5
+ # goreleaser does not work with CGO, it could also complicate
6
+ # usage by users in CI/CD systems like Terraform Cloud where
7
+ # they are unable to install libraries.
8
+ - CGO_ENABLED=0
9
+ mod_timestamp : ' {{ .CommitTimestamp }}'
10
+ flags :
11
+ - -trimpath
12
+ ldflags :
13
+ - ' -s -w -X main.version={{.Version}} -X main.commit={{.Commit}}'
14
+ goos :
15
+ - freebsd
16
+ - windows
17
+ - linux
18
+ - darwin
19
+ goarch :
20
+ - amd64
21
+ - ' 386'
22
+ - arm
23
+ - arm64
24
+ ignore :
25
+ - goos : darwin
26
+ goarch : ' 386'
27
+ binary : ' {{ .ProjectName }}_v{{ .Version }}'
28
+ archives :
29
+ - format : zip
30
+ name_template : ' {{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}'
31
+ checksum :
32
+ name_template : ' {{ .ProjectName }}_{{ .Version }}_SHA256SUMS'
33
+ algorithm : sha256
34
+ signs :
35
+ - artifacts : checksum
36
+ args :
37
+ # if you are using this in a GitHub action or some other automated pipeline, you
38
+ # need to pass the batch flag to indicate its not interactive.
39
+ - " --batch"
40
+ - " --local-user"
41
+ - " {{ .Env.GPG_FINGERPRINT }}" # set this environment variable for your signing key
42
+ - " --output"
43
+ - " ${signature}"
44
+ - " --detach-sign"
45
+ - " ${artifact}"
46
+ release :
47
+ # If you want to manually examine the release before its live, uncomment this line:
48
+ # draft: true
49
+ changelog :
50
+ skip : true
You can’t perform that action at this time.
0 commit comments