-
Notifications
You must be signed in to change notification settings - Fork 4
/
.goreleaser.yml
110 lines (103 loc) · 3.13 KB
/
.goreleaser.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# This is an example .goreleaser.yml file with some sane defaults.
# Make sure to check the documentation at http://goreleaser.com
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
- make gen-version
builds:
- env:
- CGO_ENABLED=0
goos:
- linux
- windows
- darwin
# 使用 ldflags="-s -w" 去掉符号表和调试信息,以减少发布包的大小
ldflags:
- -s -w
# upx 在部分 Mac 系统中会出现 killed 的报错,二进制无法正常工作,暂时不使用
# hooks:
# post:
# - upx -9 "{{ .Path }}"
# upx 在 windows amd64 上会报错,暂时不用
# ignore:
# - goos: windows
# goarch: arm64
main: ./cmd/mdfmt
archives:
- id: foo
name_template: >-
{{ .ProjectName }}_
{{- title .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else if eq .Arch "386" }}i386
{{- else }}{{ .Arch }}{{ end }}
checksum:
name_template: 'checksums.txt'
snapshot:
name_template: "{{ .Tag }}-next"
changelog:
sort: desc
filters:
exclude:
- '^docs:'
- '^test:'
release:
github:
owner: elliotxx
name: mdfmt
draft: false
footer: |
## Docker Images
* `elliotxx/mdfmt:{{ .Tag }}`
* `elliotxx/mdfmt:{{ .Tag }}-arm64`
## Thanks!
dockers:
- image_templates:
- 'elliotxx/{{ .ProjectName }}:{{ .Tag }}'
- 'elliotxx/{{ .ProjectName }}:latest'
# - 'ghcr.io/elliotxx/{{ .ProjectName }}:{{ .Tag }}'
# - 'ghcr.io/elliotxx/{{ .ProjectName }}:latest'
dockerfile: Dockerfile
use: docker
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.name={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.source={{.GitURL}}"
- "--platform=linux/amd64"
- image_templates:
- 'elliotxx/{{ .ProjectName }}:{{ .Tag }}-arm64'
# - 'ghcr.io/elliotxx/{{ .ProjectName }}:{{ .Tag }}-arm64'
dockerfile: Dockerfile
use: docker
build_flag_templates:
- "--pull"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.name={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.source={{.GitURL}}"
- "--platform=linux/arm64"
goarch: arm64
brews:
- tap:
owner: elliotxx
name: homebrew-tap
# token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
url_template: "https://github.com/elliotxx/mdfmt/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
download_strategy: CurlDownloadStrategy
# Git author used to commit to the repository.
# Defaults are shown.
commit_author:
name: GoReleaser Bot
email: [email protected]
folder: HomebrewFormula
homepage: "https://github.com/elliotxx/mdfmt"
description: "A Markdown formatter that follow the CommonMark. Like gofmt, but for Markdown."
license: "MIT"
skip_upload: false
test: |
system "#{bin}/mdfmt -V"