This repository was archived by the owner on Nov 2, 2022. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +101
-0
lines changed Expand file tree Collapse file tree 2 files changed +101
-0
lines changed 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 (paultyng/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.14
32
+ -
33
+ name : Import GPG key
34
+ id : import_gpg
35
+ uses : paultyng/ghaction-import-gpg@v2.1.0
36
+ env :
37
+ GPG_PRIVATE_KEY : ${{ secrets.GPG_PRIVATE_KEY }}
38
+ PASSPHRASE : ${{ secrets.PASSPHRASE }}
39
+ -
40
+ name : Run GoReleaser
41
+ uses : goreleaser/goreleaser-action@v2
42
+ with :
43
+ version : latest
44
+ args : release --rm-dist
45
+ env :
46
+ GPG_FINGERPRINT : ${{ steps.import_gpg.outputs.fingerprint }}
47
+ 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
+ before :
4
+ hooks :
5
+ # this is just an example and not a requirement for provider building/publishing
6
+ - go mod tidy
7
+ builds :
8
+ - env :
9
+ # goreleaser does not work with CGO, it could also complicate
10
+ # usage by users in CI/CD systems like Terraform Cloud where
11
+ # they are unable to install libraries.
12
+ - CGO_ENABLED=0
13
+ mod_timestamp : ' {{ .CommitTimestamp }}'
14
+ flags :
15
+ - -trimpath
16
+ ldflags :
17
+ - ' -s -w -X main.version={{.Version}} -X main.commit={{.Commit}}'
18
+ goos :
19
+ - freebsd
20
+ - windows
21
+ - linux
22
+ - darwin
23
+ goarch :
24
+ - amd64
25
+ - ' 386'
26
+ - arm
27
+ - arm64
28
+ ignore :
29
+ - goos : darwin
30
+ goarch : ' 386'
31
+ binary : ' {{ .ProjectName }}_v{{ .Version }}'
32
+ archives :
33
+ - format : zip
34
+ name_template : ' {{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}'
35
+ checksum :
36
+ name_template : ' {{ .ProjectName }}_{{ .Version }}_SHA256SUMS'
37
+ algorithm : sha256
38
+ signs :
39
+ - artifacts : checksum
40
+ args :
41
+ # if you are using this in a GitHub action or some other automated pipeline, you
42
+ # need to pass the batch flag to indicate its not interactive.
43
+ - " --batch"
44
+ - " --local-user"
45
+ - " {{ .Env.GPG_FINGERPRINT }}" # set this environment variable for your signing key
46
+ - " --output"
47
+ - " ${signature}"
48
+ - " --detach-sign"
49
+ - " ${artifact}"
50
+ release :
51
+ # If you want to manually examine the release before its live, uncomment this line:
52
+ # draft: true
53
+ changelog :
54
+ skip : true
You can’t perform that action at this time.
0 commit comments