Tests-arm64 #116
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Tests-arm64 | |
on: | |
schedule: | |
- cron: '30 1 * * *' # runs daily at 1:30 am. | |
permissions: read-all | |
jobs: | |
test: | |
# this is to prevent the job to run at forked projects | |
if: github.repository == 'etcd-io/etcd' | |
runs-on: [self-hosted, Linux, ARM64] | |
container: golang:1.19-bullseye | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
target: | |
- linux-arm64-integration-1-cpu | |
- linux-arm64-integration-2-cpu | |
- linux-arm64-integration-4-cpu | |
- linux-arm64-unit-4-cpu-race | |
steps: | |
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 | |
# https://github.com/actions/checkout/issues/1169 | |
- run: git config --system --add safe.directory '*' | |
- id: goversion | |
run: echo "goversion=$(cat .go-version)" >> "$GITHUB_OUTPUT" | |
- uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 | |
with: | |
go-version: ${{ steps.goversion.outputs.goversion }} | |
- env: | |
TARGET: ${{ matrix.target }} | |
run: | | |
set -euo pipefail | |
go clean -testcache | |
mkdir "${TARGET}" | |
export JUNIT_REPORT_DIR=$(realpath ${TARGET}) | |
case "${TARGET}" in | |
linux-arm64-integration-1-cpu) | |
GOOS=linux GOARCH=arm64 CPU=1 make test-integration | |
;; | |
linux-arm64-integration-2-cpu) | |
GOOS=linux GOARCH=arm64 CPU=2 make test-integration | |
;; | |
linux-arm64-integration-4-cpu) | |
GOOS=linux GOARCH=arm64 CPU=4 make test-integration | |
;; | |
linux-arm64-unit-4-cpu-race) | |
GOOS=linux GOARCH=arm64 CPU=4 RACE=true GO_TEST_FLAGS='-p=2' make test-unit | |
;; | |
*) | |
echo "Failed to find target" | |
exit 1 | |
;; | |
esac | |
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 | |
if: always() | |
with: | |
path: ./**/junit_*.xml |