.goreleaser.yml

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