forked from fidelity/kconnect
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.goreleaser.yml
145 lines (133 loc) · 4.08 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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
before:
hooks:
- go mod download
builds:
-
id: default
main: ./cmd/kconnect
binary: kconnect
env:
- CGO_ENABLED=0
ldflags:
- -s -w -X github.com/fidelity/kconnect/internal/version.buildDate={{.Date}} -X github.com/fidelity/kconnect/internal/version.commitHash={{.Commit}} -X github.com/fidelity/kconnect/internal/version.version={{.Version}}
goos:
- windows
- darwin
- linux
goarch:
- amd64
- arm
- arm64
release:
prerelease: auto
archives:
-
id: default
builds:
- default
name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
replacements:
darwin: macos
format: tar.gz
format_overrides:
- goos: windows
format: zip
checksum:
name_template: "{{ .ProjectName }}_checksums.txt"
snapshot:
name_template: "{{ .Tag }}-next"
changelog:
sort: asc
filters:
exclude:
- '^test:'
- '^chore:'
- '^style:'
- '^Merge'
brews:
-
tap:
owner: fidelity
name: homebrew-tap
homepage: "https://github.com/fidelity/kconnect"
description: "Kubernetes Connection Manager CLI"
dependencies:
- aws-iam-authenticator
- Azure/kubelogin/kubelogin
- kubernetes-cli
folder: Formula
dockers:
-
dockerfile: Dockerfile
image_templates:
- "docker.io/kconnectcli/kconnect:latest"
- "docker.io/kconnectcli/kconnect:{{ .Tag }}"
- "docker.io/kconnectcli/kconnect:v{{ .Major }}.{{ .Minor }}"
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
-
dockerfile: Dockerfile.alpine
image_templates:
- "docker.io/kconnectcli/kconnect:latest-alpine"
- "docker.io/kconnectcli/kconnect:{{ .Tag }}-alpine"
- "docker.io/kconnectcli/kconnect:v{{ .Major }}.{{ .Minor }}-alpine"
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
-
dockerfile: Dockerfile.deps
image_templates:
- "docker.io/kconnectcli/kconnect:latest-alpine-with-deps"
- "docker.io/kconnectcli/kconnect:{{ .Tag }}-alpine-with-deps"
- "docker.io/kconnectcli/kconnect:v{{ .Major }}.{{ .Minor }}-alpine-with-deps"
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
nfpms:
-
package_name: kconnect
replacements:
darwin: macos
file_name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
vendor: kconnect authors
homepage: https://github.com/fidelity/kconnect
description: "The Kubernetes Connection Manager CLI"
license: Apache 2.0
formats:
- apk
- deb
- rpm
dependencies:
- kubectl
# snapcrafts:
# -
# name: kconnect
# name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
# replacements:
# darwin: macos
# publish: true
# summary: "The Kubernetes Connection Manager CLI"
# description: "kconnect is a CLI utility that can be used to discover and securely access Kubernetes clusters across multiple operating environments."
# grade: stable
# confinement: strict
# license: Apache-2.0
# base: bare
# apps:
# kconnect:
# plugs: ["home", "network", "dot-aws-credentials", "dot-kube-config"]
# plugs:
# dot-aws-credentials:
# interface: personal-files
# write:
# - $HOME/.aws/credentials
# dot-kube-config:
# interface: personal-files
# write:
# - $HOME/.kube/config