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