gha: Introduce arm64 for tests

Introduce arm64 for Linux tests on Github Actions

Signed-off-by: Arnaud Meukam <ameukam@gmail.com>
This commit is contained in:
Arnaud Meukam 2025-02-24 15:57:29 +01:00
parent 551bd33aa2
commit e4a739d185
1 changed files with 55 additions and 35 deletions

View File

@ -1,7 +1,7 @@
--- ---
name: CI name: CI
'on': "on":
- push - push
- pull_request - pull_request
@ -13,17 +13,27 @@ permissions:
contents: read contents: read
jobs: jobs:
build-linux-amd64: build-linux:
strategy:
matrix:
os:
- name: Linux-amd64
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04
arch: amd64
- name: Linux-arm64
runs-on: ubuntu-24.04-arm
arch: arm64
name: build-linux-${{ matrix.os.arch }}
runs-on: ${{ matrix.os.runs-on }}
steps: steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with: with:
path: ${{ env.GOPATH }}/src/k8s.io/kops path: ${{ env.GOPATH }}/src/k8s.io/kops
- name: Set up go - name: Set up go
uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with: with:
go-version-file: '${{ env.GOPATH }}/src/k8s.io/kops/go.mod' go-version-file: "${{ env.GOPATH }}/src/k8s.io/kops/go.mod"
- name: make all examples test - name: make all examples test
working-directory: ${{ env.GOPATH }}/src/k8s.io/kops working-directory: ${{ env.GOPATH }}/src/k8s.io/kops
@ -38,9 +48,9 @@ jobs:
path: ${{ env.GOPATH }}/src/k8s.io/kops path: ${{ env.GOPATH }}/src/k8s.io/kops
- name: Set up go - name: Set up go
uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with: with:
go-version-file: '${{ env.GOPATH }}/src/k8s.io/kops/go.mod' go-version-file: "${{ env.GOPATH }}/src/k8s.io/kops/go.mod"
- name: make kops examples test - name: make kops examples test
working-directory: ${{ env.GOPATH }}/src/k8s.io/kops working-directory: ${{ env.GOPATH }}/src/k8s.io/kops
@ -55,9 +65,9 @@ jobs:
path: ${{ env.GOPATH }}/src/k8s.io/kops path: ${{ env.GOPATH }}/src/k8s.io/kops
- name: Set up go - name: Set up go
uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with: with:
go-version-file: '${{ env.GOPATH }}/src/k8s.io/kops/go.mod' go-version-file: "${{ env.GOPATH }}/src/k8s.io/kops/go.mod"
- name: make kops examples test - name: make kops examples test
working-directory: ${{ env.GOPATH }}/src/k8s.io/kops working-directory: ${{ env.GOPATH }}/src/k8s.io/kops
@ -65,16 +75,26 @@ jobs:
make kops examples test-windows make kops examples test-windows
verify: verify:
strategy:
matrix:
os:
- name: Linux-amd64
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04
arch: amd64
- name: Linux-arm64
runs-on: ubuntu-24.04-arm
arch: arm64
name: verify-${{ matrix.os.arch }}
runs-on: ${{ matrix.os.runs-on }}
steps: steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with: with:
path: ${{ env.GOPATH }}/src/k8s.io/kops path: ${{ env.GOPATH }}/src/k8s.io/kops
- name: Set up go - name: Set up go
uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with: with:
go-version-file: '${{ env.GOPATH }}/src/k8s.io/kops/go.mod' go-version-file: "${{ env.GOPATH }}/src/k8s.io/kops/go.mod"
- name: make quick-ci - name: make quick-ci
working-directory: ${{ env.GOPATH }}/src/k8s.io/kops working-directory: ${{ env.GOPATH }}/src/k8s.io/kops