mirror of
https://github.com/caddyserver/caddy.git
synced 2024-11-23 06:36:16 +08:00
2ebfda1ae9
Some files had the old copyright or were missing the license comment entirely. Also change Light Code Labs to Dyanim in security contact and releases.
130 lines
3.4 KiB
YAML
130 lines
3.4 KiB
YAML
before:
|
|
hooks:
|
|
# The build is done in this particular way to build Caddy in a designated directory named in .gitignore.
|
|
# This is so we can run goreleaser on tag without Git complaining of being dirty. The main.go in cmd/caddy directory
|
|
# cannot be built within that directory due to changes necessary for the build causing Git to be dirty, which
|
|
# subsequently causes gorleaser to refuse running.
|
|
- mkdir -p caddy-build
|
|
- cp cmd/caddy/main.go caddy-build/main.go
|
|
- cp ./go.mod caddy-build/go.mod
|
|
- sed -i.bkp 's|github.com/caddyserver/caddy/v2|caddy|g' ./caddy-build/go.mod
|
|
# GoReleaser doesn't seem to offer {{.Tag}} at this stage, so we have to embed it into the env
|
|
# so we run: TAG=$(git describe --abbrev=0) goreleaser release --rm-dist --skip-publish --skip-validate
|
|
- go mod edit -require=github.com/caddyserver/caddy/v2@{{.Env.TAG}} ./caddy-build/go.mod
|
|
# as of Go 1.16, `go` commands no longer automatically change go.{mod,sum}. We now have to explicitly
|
|
# run `go mod tidy`. The `/bin/sh -c '...'` is because goreleaser can't find cd in PATH without shell invocation.
|
|
- /bin/sh -c 'cd ./caddy-build && go mod tidy'
|
|
- git clone --depth 1 https://github.com/caddyserver/dist caddy-dist
|
|
- go mod download
|
|
|
|
builds:
|
|
- env:
|
|
- CGO_ENABLED=0
|
|
- GO111MODULE=on
|
|
main: main.go
|
|
dir: ./caddy-build
|
|
binary: caddy
|
|
goos:
|
|
- darwin
|
|
- linux
|
|
- windows
|
|
- freebsd
|
|
goarch:
|
|
- amd64
|
|
- arm
|
|
- arm64
|
|
- s390x
|
|
- ppc64le
|
|
goarm:
|
|
- 5
|
|
- 6
|
|
- 7
|
|
ignore:
|
|
- goos: darwin
|
|
goarch: arm
|
|
- goos: darwin
|
|
goarch: ppc64le
|
|
- goos: darwin
|
|
goarch: s390x
|
|
- goos: windows
|
|
goarch: ppc64le
|
|
- goos: windows
|
|
goarch: s390x
|
|
- goos: freebsd
|
|
goarch: ppc64le
|
|
- goos: freebsd
|
|
goarch: s390x
|
|
- goos: freebsd
|
|
goarch: arm
|
|
goarm: 5
|
|
flags:
|
|
- -trimpath
|
|
ldflags:
|
|
- -s -w
|
|
|
|
archives:
|
|
- format_overrides:
|
|
- goos: windows
|
|
format: zip
|
|
replacements:
|
|
darwin: mac
|
|
checksum:
|
|
algorithm: sha512
|
|
|
|
nfpms:
|
|
- id: default
|
|
package_name: caddy
|
|
|
|
vendor: Dyanim
|
|
homepage: https://caddyserver.com
|
|
maintainer: Matthew Holt <mholt@users.noreply.github.com>
|
|
description: |
|
|
Caddy - Powerful, enterprise-ready, open source web server with automatic HTTPS written in Go
|
|
license: Apache 2.0
|
|
|
|
formats:
|
|
- deb
|
|
# - rpm
|
|
|
|
bindir: /usr/bin
|
|
contents:
|
|
- src: ./caddy-dist/init/caddy.service
|
|
dst: /lib/systemd/system/caddy.service
|
|
|
|
- src: ./caddy-dist/init/caddy-api.service
|
|
dst: /lib/systemd/system/caddy-api.service
|
|
|
|
- src: ./caddy-dist/welcome/index.html
|
|
dst: /usr/share/caddy/index.html
|
|
|
|
- src: ./caddy-dist/scripts/completions/bash-completion
|
|
dst: /etc/bash_completion.d/caddy
|
|
|
|
- src: ./caddy-dist/config/Caddyfile
|
|
dst: /etc/caddy/Caddyfile
|
|
type: config
|
|
|
|
scripts:
|
|
postinstall: ./caddy-dist/scripts/postinstall.sh
|
|
preremove: ./caddy-dist/scripts/preremove.sh
|
|
postremove: ./caddy-dist/scripts/postremove.sh
|
|
|
|
|
|
release:
|
|
github:
|
|
owner: caddyserver
|
|
name: caddy
|
|
draft: true
|
|
prerelease: auto
|
|
|
|
changelog:
|
|
sort: asc
|
|
filters:
|
|
exclude:
|
|
- '^chore:'
|
|
- '^ci:'
|
|
- '^docs?:'
|
|
- '^readme:'
|
|
- '^tests?:'
|
|
- '^\w+\s+' # a hack to remove commit messages without colons thus don't correspond to a package
|