Files
pubsub/.goreleaser.yml
2026-02-22 00:55:09 -08:00

119 lines
2.8 KiB
YAML

project_name: nats-server
version: 2
release:
github:
owner: '{{ envOrDefault "GITHUB_REPOSITORY_OWNER" "nats-io" }}'
name: '{{ envOrDefault "GITHUB_REPOSITORY_NAME" "nats-server" }}'
name_template: "Release {{.Tag}}"
draft: true
changelog:
disable: true
builds:
- main: .
binary: nats-server
flags:
- -trimpath
ldflags:
- -w -X 'github.com/nats-io/nats-server/v2/server.gitCommit={{.ShortCommit}}' -X 'github.com/nats-io/nats-server/v2/server.serverVersion={{.Tag}}'
env:
# This is the toolchain version we use for releases. To override, set the env var, e.g.:
# GORELEASER_TOOLCHAIN="go1.22.8" TARGET='linux_amd64' goreleaser build --snapshot --clean --single-target
- GOTOOLCHAIN={{ envOrDefault "GORELEASER_TOOLCHAIN" "go1.26.0" }}
- GO111MODULE=on
- CGO_ENABLED=0
goos:
- darwin
- linux
- windows
- freebsd
goarch:
- amd64
- arm
- arm64
- 386
- loong64
- mips64le
- s390x
- ppc64le
# RISC-V currently only supported on Linux
- riscv64
goarm:
- 6
- 7
ignore:
- goos: windows
goarch: arm
- goos: darwin
goarch: 386
- goos: freebsd
goarch: arm
- goos: freebsd
goarch: arm64
- goos: freebsd
goarch: 386
- goos: darwin
goarch: riscv64
- goos: windows
goarch: riscv64
- goos: freebsd
goarch: riscv64
mod_timestamp: "{{ .CommitTimestamp }}"
nfpms:
- file_name_template: "{{.ProjectName}}-{{.Tag}}-{{.Arch}}{{if .Arm}}{{.Arm}}{{end}}"
homepage: https://nats.io
description: High-Performance server for NATS, the cloud native messaging system.
maintainer: Ivan Kozlovic <ivan@synadia.com>
license: Apache 2.0
vendor: Synadia Inc.
formats:
- deb
- rpm
mtime: "{{ .CommitDate }}"
contents:
- src: /usr/bin/nats-server
dst: /usr/local/bin/nats-server
type: "symlink"
rpm:
buildhost: synadia.com
archives:
- name_template: "{{.ProjectName}}-{{.Tag}}-{{.Os}}-{{.Arch}}{{if .Arm}}{{.Arm}}{{end}}"
id: targz-archives
wrap_in_directory: true
formats: ["tar.gz"]
format_overrides:
- goos: windows
formats: ["zip"]
builds_info:
owner: root
group: root
mode: 0755
files:
- src: README.md
info:
owner: root
group: root
mode: 0644
mtime: "{{ .CommitDate }}"
- src: LICENSE
info:
owner: root
group: root
mode: 0644
mtime: "{{ .CommitDate }}"
checksum:
name_template: "SHA256SUMS"
algorithm: sha256
sboms:
- artifacts: binary
documents:
[
"{{.ProjectName}}-{{.Tag}}-{{.Os}}-{{.Arch}}{{if .Arm}}{{.Arm}}{{end}}.sbom.spdx.json",
]