mirror of
https://github.com/caddyserver/caddy.git
synced 2025-02-24 16:59:00 +01:00
Merge branch 'v2' of https://github.com/caddyserver/caddy
This commit is contained in:
commit
9eecd698da
3 changed files with 124 additions and 0 deletions
53
.github/workflows/release.yml
vendored
Normal file
53
.github/workflows/release.yml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
name: Release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- 'v*.*.*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
name: Release
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ ubuntu-latest ]
|
||||||
|
go-version: [ 1.14.x ]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Install Go
|
||||||
|
uses: actions/setup-go@v1
|
||||||
|
with:
|
||||||
|
go-version: ${{ matrix.go-version }}
|
||||||
|
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# So GoReleaser can generate the changelog properly
|
||||||
|
- name: Unshallowify the repo clone
|
||||||
|
run: git fetch --prune --unshallow
|
||||||
|
|
||||||
|
- name: Print Go version and environment
|
||||||
|
id: vars
|
||||||
|
run: |
|
||||||
|
printf "Using go at: $(which go)\n"
|
||||||
|
printf "Go version: $(go version)\n"
|
||||||
|
printf "\n\nGo environment:\n\n"
|
||||||
|
go env
|
||||||
|
printf "\n\nSystem environment:\n\n"
|
||||||
|
env
|
||||||
|
|
||||||
|
# https://github.community/t5/GitHub-Actions/How-to-get-just-the-tag-name/m-p/32167/highlight/true#M1027
|
||||||
|
- name: Get the version
|
||||||
|
id: get_version
|
||||||
|
run: echo "::set-output name=version_tag::${GITHUB_REF/refs\/tags\//}"
|
||||||
|
|
||||||
|
# GoReleaser will take care of publishing those artifacts into the release
|
||||||
|
- name: Run GoReleaser
|
||||||
|
uses: goreleaser/goreleaser-action@v1
|
||||||
|
with:
|
||||||
|
version: latest
|
||||||
|
args: release --rm-dist
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
TAG: ${{ steps.vars.outputs.version_tag }}
|
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -16,3 +16,8 @@ cmd/caddy/caddy.exe
|
||||||
|
|
||||||
# go modules
|
# go modules
|
||||||
vendor
|
vendor
|
||||||
|
|
||||||
|
# goreleaser artifacts
|
||||||
|
dist
|
||||||
|
caddy-build
|
||||||
|
caddy-dist
|
66
.goreleaser.yml
Normal file
66
.goreleaser.yml
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
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
|
||||||
|
- 386
|
||||||
|
- arm
|
||||||
|
- arm64
|
||||||
|
goarm:
|
||||||
|
- 6
|
||||||
|
- 7
|
||||||
|
ignore:
|
||||||
|
- goos: darwin
|
||||||
|
goarch: 386
|
||||||
|
- goos: darwin
|
||||||
|
goarch: arm
|
||||||
|
flags:
|
||||||
|
- -trimpath
|
||||||
|
ldflags:
|
||||||
|
- -s -w
|
||||||
|
archives:
|
||||||
|
- format_overrides:
|
||||||
|
- goos: windows
|
||||||
|
format: zip
|
||||||
|
replacements:
|
||||||
|
darwin: macOS
|
||||||
|
linux: Linux
|
||||||
|
windows: Windows
|
||||||
|
386: i386
|
||||||
|
amd64: x86_64
|
||||||
|
checksum:
|
||||||
|
algorithm: sha512
|
||||||
|
release:
|
||||||
|
github:
|
||||||
|
owner: caddyserver
|
||||||
|
name: caddy
|
||||||
|
draft: true
|
||||||
|
prerelease: auto
|
||||||
|
changelog:
|
||||||
|
sort: asc
|
||||||
|
filters:
|
||||||
|
exclude:
|
||||||
|
- '^docs:'
|
||||||
|
- '^test:'
|
||||||
|
- '^chore:'
|
||||||
|
- '^\w+\s+' # a hack to remove commit messages without colons thus don't correspond to a package
|
Loading…
Reference in a new issue