diff --git a/.github/workflows/selftest.yml b/.github/workflows/selftest.yml index cf74560..2908ed0 100644 --- a/.github/workflows/selftest.yml +++ b/.github/workflows/selftest.yml @@ -1,52 +1,42 @@ on: pull_request: + name: Self-test jobs: - self-test-ubuntu: - name: on Ubuntu - runs-on: ubuntu-latest + + self-test: + strategy: + fail-fast: false + matrix: + os: ['ubuntu', 'macos'] # TODO: add windows + + name: on ${{ matrix.os }} + runs-on: ${{ matrix.os }}-latest steps: + - name: Set up Go uses: actions/setup-go@v2 with: go-version: 1.16 + - name: Checkout uses: actions/checkout@v2 + - name: Install gotestfmt uses: ./ with: - token: ${{ secrets.GH_TOKEN }} + token: ${{ secrets.GITHUB_TOKEN }} + - name: Run gotestfmt working-directory: testdata - run: go test -json -v ./... 2>&1 | tee /tmp/gotest.log | gotestfmt + shell: bash + run: | + go test -json -v ./... 2>&1 | tee gotest.${{ matrix.os }}.log | gotestfmt + - name: Upload test log uses: actions/upload-artifact@v3 if: always() with: - name: test-log-ubuntu - path: /tmp/gotest.log + name: test-log-${{ matrix.os }} + path: testdata/gotest.${{ matrix.os }}.log if-no-files-found: error - self-test-macos: - name: on MacOS - runs-on: macos-latest - steps: - - name: Set up Go - uses: actions/setup-go@v2 - with: - go-version: 1.16 - - name: Checkout - uses: actions/checkout@v2 - - name: Install gotestfmt - uses: ./ - with: - token: ${{ secrets.GH_TOKEN }} - - name: Run gotestfmt - working-directory: testdata - run: go test -json -v ./... 2>&1 | tee ./gotest.log | gotestfmt - - name: Upload test log - uses: actions/upload-artifact@v3 - if: always() - with: - name: test-log-macos - path: ./testdata/gotest.log - if-no-files-found: error \ No newline at end of file