mirror of https://github.com/hashicorp/consul
ci: use correct build-distros workflow (#16757)
Signed-off-by: Dan Bond <danbond@protonmail.com>pull/16770/head
parent
9d636aa816
commit
d06ede9daf
|
@ -1,17 +1,32 @@
|
||||||
|
# NOTE: this workflow builds Consul binaries on multiple architectures for PRs.
|
||||||
|
# It is aimed at checking new commits don't introduce any breaking build changes.
|
||||||
name: build-distros
|
name: build-distros
|
||||||
|
|
||||||
on:
|
on: [pull_request]
|
||||||
pull_request:
|
|
||||||
branches: ["main"]
|
permissions:
|
||||||
push:
|
contents: read
|
||||||
branches: ["main"]
|
|
||||||
tags: ["*"]
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
check-go-mod:
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
||||||
|
- uses: actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # pin@v3.5.0
|
||||||
|
with:
|
||||||
|
go-version-file: 'go.mod'
|
||||||
|
- run: go mod tidy
|
||||||
|
- run: |
|
||||||
|
if [[ -n $(git status -s) ]]; then
|
||||||
|
echo "Git directory has changes"
|
||||||
|
git status -s
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
build-386:
|
build-386:
|
||||||
strategy:
|
needs: check-go-mod
|
||||||
matrix:
|
env:
|
||||||
os: ['freebsd', 'linux', 'windows']
|
XC_OS: "freebsd linux windows"
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
||||||
|
@ -19,12 +34,15 @@ jobs:
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
- name: Build
|
- name: Build
|
||||||
run: GOOS=${{ matrix.os }} GOARCH=386 CGO_ENABLED=0 go build
|
run: |
|
||||||
|
for os in $XC_OS; do
|
||||||
|
GOOS="$os" GOARCH=386 CGO_ENABLED=0 go build
|
||||||
|
done
|
||||||
|
|
||||||
build-amd64:
|
build-amd64:
|
||||||
strategy:
|
needs: check-go-mod
|
||||||
matrix:
|
env:
|
||||||
os: ['darwin', 'freebsd', 'linux', 'solaris', 'windows']
|
XC_OS: "darwin freebsd linux solaris windows"
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
||||||
|
@ -32,12 +50,26 @@ jobs:
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
- name: Build
|
- name: Build
|
||||||
run: GOOS=${{ matrix.os }} GOARCH=amd64 CGO_ENABLED=0 go build
|
run: |
|
||||||
|
for os in $XC_OS; do
|
||||||
|
GOOS="$os" GOARCH=amd64 CGO_ENABLED=0 go build
|
||||||
|
done
|
||||||
|
|
||||||
build-arm:
|
build-arm:
|
||||||
|
needs: check-go-mod
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
|
env:
|
||||||
|
CGO_ENABLED: 1
|
||||||
|
GOOS: linux
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3.3.0
|
||||||
- uses: actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # pin@v3.5.0
|
- uses: actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # pin@v3.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
|
- run: |
|
||||||
|
sudo rm -fv /etc/apt/sources.list.d/github_git-lfs.list # workaround for https://github.com/actions/runner-images/issues/1983
|
||||||
|
sudo apt-get update --allow-releaseinfo-change-suite --allow-releaseinfo-change-version && sudo apt-get install -y gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf gcc-aarch64-linux-gnu
|
||||||
|
|
||||||
|
- run: CC=arm-linux-gnueabi-gcc GOARCH=arm GOARM=5 go build
|
||||||
|
- run: CC=arm-linux-gnueabihf-gcc GOARCH=arm GOARM=6 go build
|
||||||
|
- run: CC=aarch64-linux-gnu-gcc GOARCH=arm64 go build
|
||||||
|
|
Loading…
Reference in New Issue