summaryrefslogtreecommitdiff
path: root/.goreleaser.yml
blob: b5ca613749cb244839a8ffdd3b0ca21b6f1457d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
before:
  hooks:
    - 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
    - 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
  goarm:
  - 6
  - 7
  ignore:
    - goos: darwin
      goarch: arm
  flags:
  - -trimpath
  ldflags:
  - -s -w
archives:
  - format_overrides:
      - goos: windows
        format: zip
    replacements:
      darwin: mac
checksum:
  algorithm: sha512
release:
  github:
    owner: caddyserver
    name: caddy
  draft: true
  prerelease: auto
changelog:
  sort: asc
  filters:
    exclude:
    - '^chore:'
    - '^ci:'
    - '^docs?:'
    - '^tests?:'
    - '^\w+\s+' # a hack to remove commit messages without colons thus don't correspond to a package