1project_name: soft-serve
2
3env:
4 - GO111MODULE=on
5 - CGO_ENABLED=0
6
7before:
8 hooks:
9 - go mod download
10
11builds:
12 - binary: "soft"
13 main: "./cmd/soft"
14 ldflags: -s -w -X main.Version=v{{ .Version }} -X main.CommitSHA={{ .Commit }}
15 goos:
16 - linux
17 - darwin
18 - windows
19 - freebsd
20 - openbsd
21 - netbsd
22 goarch:
23 - amd64
24 - arm64
25 - "386"
26 - arm
27 goarm:
28 - "6"
29 - "7"
30 ignore:
31 - goos: windows
32 goarch: arm64
33 - goos: windows
34 goarm: "6"
35 - goos: windows
36 goarm: "7"
37 - goos: openbsd
38 goarm: "6"
39
40archives:
41 - format_overrides:
42 - goos: windows
43 format: zip
44 replacements:
45 windows: Windows
46 darwin: Darwin
47 386: i386
48 amd64: x86_64
49
50nfpms:
51 - vendor: charmbracelet
52 homepage: "https://charm.sh/"
53 maintainer: "Christian Rocha <christian@charm.sh>"
54 description: "A personal key value store"
55 license: MIT
56 formats:
57 - apk
58 - deb
59 - rpm
60 bindir: /usr/bin
61
62brews:
63 - tap:
64 owner: charmbracelet
65 name: homebrew-tap
66 token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
67 commit_author:
68 name: "Christian Rocha"
69 email: "christian@charm.sh"
70 homepage: "https://charm.sh/"
71 description: "A personal key value store"
72
73signs:
74 - artifacts: checksum
75
76checksum:
77 name_template: "checksums.txt"
78snapshot:
79 name_template: "{{ .Tag }}-next"
80changelog:
81 sort: asc
82 filters:
83 exclude:
84 - "^docs:"
85 - "^test:"
86
87release:
88 footer: |
89 * * *
90 Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli) or [The Fediverse](https://mastodon.technology/@charm).
91
92 <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg?1" width="400"></a>
93
94dockers:
95 - image_templates:
96 - "docker.io/charmcli/soft-serve:latest-amd64"
97 - "docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-amd64"
98 - "docker.io/charmcli/soft-serve:v{{ .Version }}-amd64"
99 - "ghcr.io/charmbracelet/soft-serve:latest-amd64"
100 - "ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-amd64"
101 - "ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-amd64"
102 goarch: amd64
103 build_flag_templates:
104 - --platform=linux/amd64
105 - --label=org.opencontainers.image.title={{ .ProjectName }}
106 - --label=org.opencontainers.image.description={{ .ProjectName }}
107 - --label=org.opencontainers.image.url=https://github.com/charmbracelet/soft-serve
108 - --label=org.opencontainers.image.source=https://github.com/charmbracelet/soft-serve
109 - --label=org.opencontainers.image.version=v{{ .Version }}
110 - --label=org.opencontainers.image.created={{ .Date }}
111 - --label=org.opencontainers.image.revision={{ .FullCommit }}
112 - --label=org.opencontainers.image.licenses=MIT
113 dockerfile: Dockerfile
114 use: buildx
115 - image_templates:
116 - "docker.io/charmcli/soft-serve:latest-i386"
117 - "docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-i386"
118 - "docker.io/charmcli/soft-serve:v{{ .Version }}-i386"
119 - "ghcr.io/charmbracelet/soft-serve:latest-i386"
120 - "ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-i386"
121 - "ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-i386"
122 goarch: "386"
123 build_flag_templates:
124 - --platform=linux/i386
125 - --label=org.opencontainers.image.title={{ .ProjectName }}
126 - --label=org.opencontainers.image.description={{ .ProjectName }}
127 - --label=org.opencontainers.image.url=https://github.com/charmbracelet/soft-serve
128 - --label=org.opencontainers.image.source=https://github.com/charmbracelet/soft-serve
129 - --label=org.opencontainers.image.version=v{{ .Version }}
130 - --label=org.opencontainers.image.created={{ .Date }}
131 - --label=org.opencontainers.image.revision={{ .FullCommit }}
132 - --label=org.opencontainers.image.licenses=MIT
133 dockerfile: Dockerfile
134 use: buildx
135 - image_templates:
136 - "docker.io/charmcli/soft-serve:latest-arm64"
137 - "docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-arm64"
138 - "docker.io/charmcli/soft-serve:v{{ .Version }}-arm64"
139 - "ghcr.io/charmbracelet/soft-serve:latest-arm64"
140 - "ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-arm64"
141 - "ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-arm64"
142 goarch: arm64
143 build_flag_templates:
144 - --platform=linux/arm64
145 - --label=org.opencontainers.image.title={{ .ProjectName }}
146 - --label=org.opencontainers.image.description={{ .ProjectName }}
147 - --label=org.opencontainers.image.url=https://github.com/charmbracelet/soft-serve
148 - --label=org.opencontainers.image.source=https://github.com/charmbracelet/soft-serve
149 - --label=org.opencontainers.image.version=v{{ .Version }}
150 - --label=org.opencontainers.image.created={{ .Date }}
151 - --label=org.opencontainers.image.revision={{ .FullCommit }}
152 - --label=org.opencontainers.image.licenses=MIT
153 dockerfile: Dockerfile
154 use: buildx
155 - image_templates:
156 - "docker.io/charmcli/soft-serve:latest-armv7"
157 - "docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-armv7"
158 - "docker.io/charmcli/soft-serve:v{{ .Version }}-armv7"
159 - "ghcr.io/charmbracelet/soft-serve:latest-armv7"
160 - "ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-armv7"
161 - "ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-armv7"
162 goarch: arm
163 goarm: "7"
164 build_flag_templates:
165 - --platform=linux/arm/v7
166 - --label=org.opencontainers.image.title={{ .ProjectName }}
167 - --label=org.opencontainers.image.description={{ .ProjectName }}
168 - --label=org.opencontainers.image.url=https://github.com/charmbracelet/soft-serve
169 - --label=org.opencontainers.image.source=https://github.com/charmbracelet/soft-serve
170 - --label=org.opencontainers.image.version=v{{ .Version }}
171 - --label=org.opencontainers.image.created={{ .Date }}
172 - --label=org.opencontainers.image.revision={{ .FullCommit }}
173 - --label=org.opencontainers.image.licenses=MIT
174 dockerfile: Dockerfile
175 use: buildx
176
177docker_manifests:
178 - name_template: docker.io/charmcli/soft-serve:latest
179 image_templates:
180 - docker.io/charmcli/soft-serve:latest-amd64
181 - docker.io/charmcli/soft-serve:latest-arm64
182 - docker.io/charmcli/soft-serve:latest-armv7
183 - docker.io/charmcli/soft-serve:latest-i386
184 - name_template: ghcr.io/charmbracelet/soft-serve:latest
185 image_templates:
186 - ghcr.io/charmbracelet/soft-serve:latest-amd64
187 - ghcr.io/charmbracelet/soft-serve:latest-arm64
188 - ghcr.io/charmbracelet/soft-serve:latest-armv7
189 - ghcr.io/charmbracelet/soft-serve:latest-i386
190 - name_template: docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}
191 image_templates:
192 - docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-amd64
193 - docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-arm64
194 - docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-armv7
195 - docker.io/charmcli/soft-serve:v{{ .Major }}.{{ .Minor }}-i386
196 - name_template: ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}
197 image_templates:
198 - ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-amd64
199 - ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-arm64
200 - ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-armv7
201 - ghcr.io/charmbracelet/soft-serve:v{{ .Major }}.{{ .Minor }}-i386
202 - name_template: docker.io/charmcli/soft-serve:v{{ .Version }}
203 image_templates:
204 - docker.io/charmcli/soft-serve:v{{ .Version }}-amd64
205 - docker.io/charmcli/soft-serve:v{{ .Version }}-arm64
206 - docker.io/charmcli/soft-serve:v{{ .Version }}-armv7
207 - docker.io/charmcli/soft-serve:v{{ .Version }}-i386
208 - name_template: ghcr.io/charmbracelet/soft-serve:v{{ .Version }}
209 image_templates:
210 - ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-amd64
211 - ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-arm64
212 - ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-armv7
213 - ghcr.io/charmbracelet/soft-serve:v{{ .Version }}-i386