|
|
@ -14,28 +14,32 @@ jobs: |
|
|
|
- name: Create a file with all the pkgs |
|
|
|
run: go list ./... > pkgs.txt |
|
|
|
- name: Split pkgs into 4 files |
|
|
|
run: split -n l/4 --additional-suffix=.txt ./pkgs.txt |
|
|
|
run: split -d -n l/4 pkgs.txt pkgs.txt.part. |
|
|
|
# cache multiple |
|
|
|
- uses: actions/upload-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-aa" |
|
|
|
path: ./xaa.txt |
|
|
|
name: "${{ github.sha }}-00" |
|
|
|
path: ./pkgs.txt.part.00 |
|
|
|
- uses: actions/upload-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-ab" |
|
|
|
path: ./xab.txt |
|
|
|
name: "${{ github.sha }}-01" |
|
|
|
path: ./pkgs.txt.part.01 |
|
|
|
- uses: actions/upload-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-ac" |
|
|
|
path: ./xac.txt |
|
|
|
name: "${{ github.sha }}-02" |
|
|
|
path: ./pkgs.txt.part.02 |
|
|
|
- uses: actions/upload-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-ad" |
|
|
|
path: ./xad.txt |
|
|
|
name: "${{ github.sha }}-03" |
|
|
|
path: ./pkgs.txt.part.03 |
|
|
|
|
|
|
|
test-coverage-part-1: |
|
|
|
tests: |
|
|
|
runs-on: ubuntu-latest |
|
|
|
needs: split-test-files |
|
|
|
strategy: |
|
|
|
fail-fast: false |
|
|
|
matrix: |
|
|
|
part: ["00", "01", "02", "03"] |
|
|
|
steps: |
|
|
|
- uses: actions/checkout@v2 |
|
|
|
- uses: technote-space/get-diff-action@v4 |
|
|
@ -46,20 +50,20 @@ jobs: |
|
|
|
go.sum |
|
|
|
- uses: actions/download-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-aa" |
|
|
|
name: "${{ github.sha }}-${{ matrix.part }}" |
|
|
|
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 |
|
|
|
cat pkgs.txt.part.${{ matrix.part }} | xargs go test -mod=readonly -timeout 8m -race -coverprofile=${{ matrix.part }}profile.out -covermode=atomic |
|
|
|
if: env.GIT_DIFF |
|
|
|
- uses: codecov/codecov-action@v1.0.13 |
|
|
|
- uses: actions/upload-artifact@v2 |
|
|
|
with: |
|
|
|
file: ./coverage.txt |
|
|
|
if: env.GIT_DIFF |
|
|
|
name: "${{ github.sha }}-${{ matrix.part }}-coverage" |
|
|
|
path: ./${{ matrix.part }}profile.out |
|
|
|
|
|
|
|
test-coverage-part-2: |
|
|
|
upload-coverage-report: |
|
|
|
runs-on: ubuntu-latest |
|
|
|
needs: split-test-files |
|
|
|
needs: tests |
|
|
|
steps: |
|
|
|
- uses: actions/checkout@v2 |
|
|
|
- uses: technote-space/get-diff-action@v4 |
|
|
@ -70,59 +74,22 @@ jobs: |
|
|
|
go.sum |
|
|
|
- uses: actions/download-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-ab" |
|
|
|
name: "${{ github.sha }}-00-coverage" |
|
|
|
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.13 |
|
|
|
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@v4 |
|
|
|
with: |
|
|
|
PATTERNS: | |
|
|
|
**/**.go |
|
|
|
go.mod |
|
|
|
go.sum |
|
|
|
- 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 10m -race -coverprofile=coverage.txt -covermode=atomic |
|
|
|
name: "${{ github.sha }}-01-coverage" |
|
|
|
if: env.GIT_DIFF |
|
|
|
- uses: codecov/codecov-action@v1.0.13 |
|
|
|
- uses: actions/download-artifact@v2 |
|
|
|
with: |
|
|
|
file: ./coverage.txt |
|
|
|
name: "${{ github.sha }}-02-coverage" |
|
|
|
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@v4 |
|
|
|
with: |
|
|
|
PATTERNS: | |
|
|
|
**/**.go |
|
|
|
go.mod |
|
|
|
go.sum |
|
|
|
- uses: actions/download-artifact@v2 |
|
|
|
with: |
|
|
|
name: "${{ github.sha }}-ad" |
|
|
|
name: "${{ github.sha }}-03-coverage" |
|
|
|
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 |
|
|
|
- run: | |
|
|
|
cat ./*profile.out | grep -v "mode: atomic" >> coverage.txt |
|
|
|
if: env.GIT_DIFF |
|
|
|
- uses: codecov/codecov-action@v1.0.13 |
|
|
|
with: |
|
|
|