From fca788a4e1c0d70b70d7bafc7b7b53abf4d4a725 Mon Sep 17 00:00:00 2001 From: Marko Date: Wed, 8 Jul 2020 14:38:39 +0200 Subject: [PATCH] ci: only run tests when go files are touched (#5097) ## Description _Please add a description of the changes that this PR introduces and the files that are the most critical to review._ Closes: #XXX --- .github/workflows/coverage.yml | 44 ++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index d69e93812..7b4286430 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -38,57 +38,101 @@ jobs: needs: split-test-files steps: - uses: actions/checkout@v2 + - uses: technote-space/get-diff-action@v1 + with: + SUFFIX_FILTER: | + .go + .mod + .sum + SET_ENV_NAME_INSERTIONS: 1 + SET_ENV_NAME_LINES: 1 - uses: actions/download-artifact@v2 with: name: "${{ github.sha }}-aa" + if: "env.GIT_DIFF != ''" - name: test & coverage report creation run: | cat xaa.txt | xargs go test -mod=readonly -timeout 8m -race -coverprofile=coverage.txt -covermode=atomic + if: "env.GIT_DIFF != ''" - uses: codecov/codecov-action@v1.0.7 with: file: ./coverage.txt + if: "env.GIT_DIFF != ''" test-coverage-part-2: runs-on: ubuntu-latest needs: split-test-files steps: - uses: actions/checkout@v2 + - uses: technote-space/get-diff-action@v1 + with: + SUFFIX_FILTER: | + .go + .mod + .sum + SET_ENV_NAME_INSERTIONS: 1 + SET_ENV_NAME_LINES: 1 - uses: actions/download-artifact@v2 with: name: "${{ github.sha }}-ab" + if: "env.GIT_DIFF != ''" - name: test & coverage report creation run: | cat xab.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic + if: "env.GIT_DIFF != ''" - uses: codecov/codecov-action@v1.0.7 with: file: ./coverage.txt + if: "env.GIT_DIFF != ''" test-coverage-part-3: runs-on: ubuntu-latest needs: split-test-files steps: - uses: actions/checkout@v2 + - uses: technote-space/get-diff-action@v1 + with: + SUFFIX_FILTER: | + .go + .mod + .sum + SET_ENV_NAME_INSERTIONS: 1 + SET_ENV_NAME_LINES: 1 - uses: actions/download-artifact@v2 with: name: "${{ github.sha }}-ac" + if: "env.GIT_DIFF != ''" - name: test & coverage report creation run: | cat xac.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic + if: "env.GIT_DIFF != ''" - uses: codecov/codecov-action@v1.0.7 with: file: ./coverage.txt + if: "env.GIT_DIFF != ''" test-coverage-part-4: runs-on: ubuntu-latest needs: split-test-files steps: - uses: actions/checkout@v2 + - uses: technote-space/get-diff-action@v1 + with: + SUFFIX_FILTER: | + .go + .mod + .sum + SET_ENV_NAME_INSERTIONS: 1 + SET_ENV_NAME_LINES: 1 - uses: actions/download-artifact@v2 with: name: "${{ github.sha }}-ad" + if: "env.GIT_DIFF != ''" - name: test & coverage report creation run: | cat xad.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic + if: "env.GIT_DIFF != ''" - uses: codecov/codecov-action@v1.0.7 with: file: ./coverage.txt + if: "env.GIT_DIFF != ''"