From 1ce5171ae170750298c150874e718740dd7ef69f Mon Sep 17 00:00:00 2001 From: Joe Chen Date: Tue, 2 Aug 2022 11:01:04 +0800 Subject: [PATCH] Do not run tests with race detection on Windows --- .github/workflows/go.yml | 42 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index f69df2963..ba23a829c 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -54,7 +54,7 @@ jobs: strategy: matrix: go-version: [ 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x ] - platform: [ ubuntu-latest, macos-latest, windows-latest ] + platform: [ ubuntu-latest, macos-latest ] runs-on: ${{ matrix.platform }} steps: - name: Install Go @@ -86,3 +86,43 @@ jobs: The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}". View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} + + # Running tests with race detection consumes too much memory on Windows, + # see https://github.com/golang/go/issues/46099 for details. + test-windows: + name: Test + strategy: + matrix: + go-version: [ 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x ] + platform: [ windows-latest ] + runs-on: ${{ matrix.platform }} + steps: + - name: Install Go + uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go-version }} + - name: Checkout code + uses: actions/checkout@v2 + - name: Run tests with coverage + run: go test -v -coverprofile=coverage -covermode=atomic ./... + - name: Upload coverage report to Codecov + uses: codecov/codecov-action@v1.5.0 + with: + file: ./coverage + flags: unittests + - name: Send email on failure + uses: dawidd6/action-send-mail@v3 + if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }} + with: + server_address: smtp.mailgun.org + server_port: 465 + username: ${{ secrets.SMTP_USERNAME }} + password: ${{ secrets.SMTP_PASSWORD }} + subject: GitHub Actions (${{ github.repository }}) job result + to: github-actions-8ce6454@unknwon.io + from: GitHub Actions (${{ github.repository }}) + reply_to: noreply@unknwon.io + body: | + The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}". + + View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}