mirror of
https://github.com/caddyserver/caddy.git
synced 2024-11-25 09:40:13 +08:00
105dac8c2a
This generated way too many test jobs, which weren't really that useful. Cross-build is just to keep us posted on which architectures are building okay, so it's not necessary to do it twice. Only plan9 is not working at this point (see https://github.com/caddyserver/caddy/issues/3615)
63 lines
1.7 KiB
YAML
63 lines
1.7 KiB
YAML
name: Cross-Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- 2.*
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- 2.*
|
|
|
|
jobs:
|
|
cross-build-test:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
goos: ['android', 'linux', 'solaris', 'illumos', 'dragonfly', 'freebsd', 'openbsd', 'plan9', 'windows', 'darwin', 'netbsd']
|
|
go: [ '1.17' ]
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: ${{ matrix.go }}
|
|
|
|
- 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
|
|
echo "::set-output name=go_cache::$(go env GOCACHE)"
|
|
|
|
- name: Cache the build cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: ${{ steps.vars.outputs.go_cache }}
|
|
key: cross-build-go${{ matrix.go }}-${{ matrix.goos }}-${{ hashFiles('**/go.sum') }}
|
|
restore-keys: |
|
|
cross-build-go${{ matrix.go }}-${{ matrix.goos }}
|
|
|
|
- name: Checkout code into the Go module directory
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Run Build
|
|
env:
|
|
CGO_ENABLED: 0
|
|
GOOS: ${{ matrix.goos }}
|
|
shell: bash
|
|
continue-on-error: true
|
|
working-directory: ./cmd/caddy
|
|
run: |
|
|
GOOS=$GOOS go build -trimpath -o caddy-"$GOOS"-amd64 2> /dev/null
|
|
if [ $? -ne 0 ]; then
|
|
echo "::warning ::$GOOS Build Failed"
|
|
exit 0
|
|
fi
|