name: Tests on: [push, pull_request] jobs: test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: target: - linux-amd64-integration-1-cpu - linux-amd64-integration-2-cpu - linux-amd64-integration-4-cpu - linux-amd64-unit-4-cpu-race - linux-386-unit-1-cpu steps: - uses: actions/checkout@v2 - uses: actions/setup-go@v2 with: go-version: "1.17.6" - run: date - env: TARGET: ${{ matrix.target }} run: | mkdir "${TARGET}" export JUNIT_REPORT_DIR=$(realpath ${TARGET}) case "${TARGET}" in linux-amd64-integration-1-cpu) GOARCH=amd64 CPU=1 PASSES='integration' RACE='false' ./scripts/test.sh ;; linux-amd64-integration-2-cpu) GOARCH=amd64 CPU=2 PASSES='integration' RACE='false' ./scripts/test.sh ;; linux-amd64-integration-4-cpu) GOARCH=amd64 CPU=4 PASSES='integration' RACE='false' ./scripts/test.sh ;; linux-amd64-unit-4-cpu-race) GOARCH=amd64 PASSES='unit' RACE='true' CPU='4' ./scripts/test.sh -p=2 ;; linux-386-unit-1-cpu) GOARCH=386 PASSES='unit' RACE='false' CPU='1' ./scripts/test.sh -p=4 ;; *) echo "Failed to find target" exit 1 ;; esac - uses: actions/upload-artifact@v2 if: always() with: path: ./**/junit_*.xml