Skip to content

Commit a0d4834

Browse files
committed
add workflows
1 parent f856dde commit a0d4834

File tree

3 files changed

+104
-29
lines changed

3 files changed

+104
-29
lines changed

.github/workflows/release.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: goreleaser
2+
3+
on:
4+
pull_request:
5+
push:
6+
# run only against tags
7+
tags:
8+
- "*"
9+
10+
permissions:
11+
contents: write
12+
# packages: write
13+
# issues: write
14+
15+
jobs:
16+
goreleaser:
17+
runs-on: ubuntu-latest
18+
steps:
19+
- name: Checkout
20+
uses: actions/checkout@v4
21+
with:
22+
fetch-depth: 0
23+
- name: Set up Go
24+
uses: actions/setup-go@v5
25+
with:
26+
go-version: stable
27+
# More assembly might be required: Docker logins, GPG, etc.
28+
# It all depends on your needs.
29+
- name: Run GoReleaser
30+
uses: goreleaser/goreleaser-action@v5
31+
with:
32+
# either 'goreleaser' (default) or 'goreleaser-pro'
33+
distribution: goreleaser
34+
# 'latest', 'nightly', or a semver
35+
version: latest
36+
args: release --clean
37+
env:
38+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39+
# Your GoReleaser Pro key, if you are using the 'goreleaser-pro' distribution
40+
# GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }}

.goreleaser.yaml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
2+
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
3+
4+
version: 1
5+
6+
before:
7+
hooks:
8+
- go mod tidy
9+
10+
builds:
11+
-
12+
id: "quickpassthrough"
13+
main: ./cmd/main.go
14+
binary: "quickpassthrough"
15+
env:
16+
- CGO_ENABLED=0
17+
goos:
18+
- linux
19+
- windows
20+
21+
goarch:
22+
- amd64
23+
- arm
24+
- arm64
25+
goarm:
26+
- 6
27+
- 7
28+
29+
# GOAMD64 to build when GOARCH is amd64.
30+
# For more info refer to: https://golang.org/doc/install/source#environment
31+
#
32+
# Default: [ 'v1' ]
33+
goamd64:
34+
- v1
35+
- v2
36+
- v3
37+
- v4
38+
39+
mod_timestamp: "{{ .CommitTimestamp }}"
40+
41+
archives:
42+
- format: tar.gz
43+
# this name template makes the OS and Arch compatible with the results of `uname`.
44+
name_template: >-
45+
{{ .ProjectName }}_
46+
{{- title .Os }}_
47+
{{- if eq .Arch "amd64" }}x86_64
48+
{{- else if eq .Arch "386" }}i386
49+
{{- else }}{{ .Arch }}{{ end }}
50+
{{- if .Arm }}v{{ .Arm }}{{ end }}
51+
52+
changelog:
53+
sort: asc
54+
filters:
55+
exclude:
56+
- "^docs:"
57+
- "^test:"
58+
59+
upx:
60+
-
61+
enabled: true
62+
compress: best
63+
lzma: true
64+
brute: true

cmd/.goreleaser.yaml

Lines changed: 0 additions & 29 deletions
This file was deleted.

0 commit comments

Comments
 (0)