forked from rook/rook
Use the latest version of Go in the github actions.
Support for both Go 1.25 and 1.26 is still available,
this only affects the version used by the CI.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 033f6f732e)
94 lines
2.7 KiB
YAML
94 lines
2.7 KiB
YAML
name: Builds
|
|
on:
|
|
pull_request:
|
|
|
|
defaults:
|
|
run:
|
|
# reference: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell
|
|
shell: bash --noprofile --norc -eo pipefail -x {0}
|
|
|
|
# cancel the in-progress workflow when PR is refreshed.
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
|
cancel-in-progress: true
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
macos-build:
|
|
runs-on: macos-latest
|
|
if: "!contains(github.event.pull_request.labels.*.name, 'skip-ci')"
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
|
|
with:
|
|
go-version: "1.26"
|
|
|
|
- name: Set up Helm
|
|
uses: azure/setup-helm@dda3372f752e03dde6b3237bc9431cdc2f7a02a2 # v5.0.0
|
|
with:
|
|
version: v3.18.2
|
|
|
|
- name: build rook
|
|
run: |
|
|
GOPATH=$(go env GOPATH) make clean && make -j$nproc BUILD_CONTAINER_IMAGE=false build
|
|
|
|
- name: validate build
|
|
run: tests/scripts/validate_modified_files.sh build
|
|
|
|
- name: run codegen
|
|
run: GOPATH=$(go env GOPATH) make codegen
|
|
|
|
- name: validate codegen
|
|
run: tests/scripts/validate_modified_files.sh codegen
|
|
|
|
- name: run mod check
|
|
run: GOPATH=$(go env GOPATH) make -j $(nproc) mod.check
|
|
|
|
- name: validate modcheck
|
|
run: tests/scripts/validate_modified_files.sh modcheck
|
|
|
|
- name: run crds-gen
|
|
run: GOPATH=$(go env GOPATH) make crds
|
|
|
|
- name: validate crds-gen
|
|
run: tests/scripts/validate_modified_files.sh crd
|
|
|
|
- name: run gen-rbac
|
|
run: GOPATH=$(go env GOPATH) make gen-rbac
|
|
|
|
- name: validate gen-rbac
|
|
run: tests/scripts/validate_modified_files.sh gen-rbac
|
|
|
|
linux-build-all:
|
|
runs-on: ubuntu-22.04
|
|
if: "!contains(github.event.pull_request.labels.*.name, 'skip-ci')"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
go-version: ["1.25", "1.26"]
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: setup golang ${{ matrix.go-version }}
|
|
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
|
|
with:
|
|
go-version: ${{ matrix.go-version }}
|
|
|
|
- name: set up QEMU
|
|
uses: docker/setup-qemu-action@ce360397dd3f832beb865e1373c09c0e9f86d70a # master
|
|
with:
|
|
platforms: all
|
|
|
|
- name: build.all rook with go ${{ matrix.go-version }}
|
|
run: |
|
|
tests/scripts/github-action-helper.sh build_rook_all
|