Files
lego/.goreleaser.yml
2025-11-08 13:38:05 +01:00

153 lines
4.0 KiB
YAML

version: 2
project_name: lego
builds:
- binary: lego
main: ./cmd/lego/
env:
- CGO_ENABLED=0
flags:
- -trimpath
ldflags:
- -s -w -X main.version={{.Version}}
goos:
- linux
- darwin
- windows
- freebsd
- openbsd
- solaris
goarch:
- amd64
- 386
- arm
- arm64
- mips
- mipsle
- mips64
- mips64le
goarm:
- 7
- 6
- 5
gomips:
- hardfloat
- softfloat
ignore:
- goos: darwin
goarch: 386
- goos: openbsd
goarch: arm
# Deprecated in go1.25, Removed in go1.26
# https://go.dev/doc/go1.25#windows
- goos: windows
goarch: arm
changelog:
sort: asc
filters:
exclude:
- '(?i)^chore:'
- '(?i)^Detach v[\d|.]+'
- '(?i)^Prepare release v[\d|.]+'
release:
skip_upload: false
github:
owner: 'go-acme'
name: 'lego'
header: |
lego is an independent, free, and open-source project, if you value it, consider [supporting it](https://donate.ldez.dev)! ❤️
Everybody thinks that the others will donate, but in the end, nobody does.
So if you think that lego is worth it, please consider [donating](https://donate.ldez.dev).
For key updates, see the [changelog](https://github.com/go-acme/lego/blob/HEAD/CHANGELOG.md#v{{ .Major }}{{ .Minor }}{{ .Patch }}).
archives:
- id: lego
name_template: '{{ .ProjectName }}_v{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}{{ if .Mips }}_{{ .Mips }}{{ end }}'
formats: ['tar.gz']
format_overrides:
- goos: windows
formats: ['zip']
files:
- LICENSE
- CHANGELOG.md
dockers_v2:
- images:
- 'goacme/lego'
dockerfile: buildx.Dockerfile
platforms:
- linux/amd64
- linux/arm64
- linux/arm/v7
tags:
- 'latest'
- 'v{{ .Major }}'
- 'v{{ .Major }}.{{ .Minor }}'
- '{{ .Tag }}'
labels:
# https://github.com/opencontainers/image-spec/blob/main/annotations.md#pre-defined-annotation-keys
'org.opencontainers.image.title': '{{.ProjectName}}'
'org.opencontainers.image.description': 'Lets Encrypt/ACME client and library written in Go'
'org.opencontainers.image.source': '{{.GitURL}}'
'org.opencontainers.image.url': '{{.GitURL}}'
'org.opencontainers.image.documentation': 'https://go-acme.github.io/lego'
'org.opencontainers.image.created': '{{.Date}}'
'org.opencontainers.image.revision': '{{.FullCommit}}'
'org.opencontainers.image.version': '{{.Version}}'
snapcrafts:
- name_template: "{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}"
disable: false
publish: true
grade: stable
confinement: strict
license: MIT
base: core22
summary: Lego is a Let's Encrypt/ACME client.
description: |
Lego is a Let's Encrypt/ACME client written in Go.
The lego snap makes it easy to install and use Lego on any Linux distribution that supports snaps.
Usage:
* `sudo snap install lego`
* `sudo lego --email="you@example.com" --domains="example.com" --server=https://acme-staging-v02.api.letsencrypt.org/directory --http --http.port :8080 run
apps:
lego:
command: lego
environment:
LEGO_PATH: /var/snap/lego/common/.lego
plugs:
- network-bind
aurs:
- description: "Let s Encrypt client and ACME library written in Go"
skip_upload: false
homepage: https://go-acme.github.io/lego/
name: 'lego-bin'
provides:
- lego
maintainers:
- "Fernandez Ludovic <lfernandez dot dev at gmail dot com>"
license: APACHE
private_key: "{{ .Env.AUR_KEY }}"
git_url: "ssh://aur@aur.archlinux.org/lego-bin.git"
commit_author:
name: ldez
email: ldez@users.noreply.github.com
package: |-
# Bin
install -Dm755 "./lego" "${pkgdir}/usr/bin/lego"
# License
install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/lego/LICENSE"