ci: migrate test_cover (#4869)

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
Co-authored-by: Ismail Khoffi <Ismail.Khoffi@gmail.com>
This commit is contained in:
Marko
2020-06-16 11:36:40 +02:00
committed by GitHub
parent 4774a8ec61
commit 062764ae72
5 changed files with 135 additions and 1620 deletions

101
.github/workflows/coverage.yml vendored Normal file
View File

@@ -0,0 +1,101 @@
name: Test Coverage
on:
pull_request:
push:
branches:
- master
- release/**
jobs:
split-test-files:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- 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
# cache multiple
- uses: actions/upload-artifact@v2
with:
name: '${{ github.sha }}-aa'
path: ./xaa.txt
- uses: actions/upload-artifact@v2
with:
name: '${{ github.sha }}-ab'
path: ./xab.txt
- uses: actions/upload-artifact@v2
with:
name: '${{ github.sha }}-ac'
path: ./xac.txt
- uses: actions/upload-artifact@v2
with:
name: '${{ github.sha }}-ad'
path: ./xad.txt
test-coverage-part-1:
runs-on: ubuntu-latest
needs: split-test-files
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v2
with:
name: '${{ github.sha }}-aa'
- name: test & coverage report creation
run: |
cat xaa.txt | xargs go test -mod=readonly -timeout 8m -race -coverprofile=coverage.txt -covermode=atomic
- uses: codecov/codecov-action@v1
with:
file: ./coverage.txt
fail_ci_if_error: true
test-coverage-part-2:
runs-on: ubuntu-latest
needs: split-test-files
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v2
with:
name: '${{ github.sha }}-ab'
- name: test & coverage report creation
run: |
cat xab.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic
- uses: codecov/codecov-action@v1
with:
file: ./coverage.txt
fail_ci_if_error: true
test-coverage-part-3:
runs-on: ubuntu-latest
needs: split-test-files
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v2
with:
name: '${{ github.sha }}-ac'
- name: test & coverage report creation
run: |
cat xac.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic
- uses: codecov/codecov-action@v1
with:
file: ./coverage.txt
fail_ci_if_error: true
test-coverage-part-4:
runs-on: ubuntu-latest
needs: split-test-files
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v2
with:
name: '${{ github.sha }}-ad'
- name: test & coverage report creation
run: |
cat xad.txt | xargs go test -mod=readonly -timeout 5m -race -coverprofile=coverage.txt -covermode=atomic
- uses: codecov/codecov-action@v1
with:
file: ./coverage.txt
fail_ci_if_error: true

View File

@@ -38,11 +38,18 @@ jobs:
- name: install
run: make install install_abci
if: "env.GIT_DIFF != ''"
- uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
if: "env.GIT_DIFF != ''"
# Cache bin
- uses: actions/cache@v1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tm-binary
key: ${{ runner.os }}-${{ github.head_ref }}-tm-binary
if: "env.GIT_DIFF != ''"
test_abci_apps:
@@ -62,10 +69,17 @@ jobs:
- name: Set GOBIN
run: |
echo "::add-path::$(go env GOPATH)/bin"
- uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
if: "env.GIT_DIFF != ''"
- uses: actions/cache@v1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tm-binary
key: ${{ runner.os }}-${{ github.head_ref }}-tm-binary
if: "env.GIT_DIFF != ''"
- name: test_abci_apps
run: abci/tests/test_app/test.sh
@@ -89,10 +103,17 @@ jobs:
- name: Set GOBIN
run: |
echo "::add-path::$(go env GOPATH)/bin"
- uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
if: "env.GIT_DIFF != ''"
- uses: actions/cache@v1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tm-binary
key: ${{ runner.os }}-${{ github.head_ref }}-tm-binary
if: "env.GIT_DIFF != ''"
- run: abci/tests/test_cli/test.sh
shell: bash
@@ -115,10 +136,17 @@ jobs:
- name: Set GOBIN
run: |
echo "::add-path::$(go env GOPATH)/bin"
- uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
if: "env.GIT_DIFF != ''"
- uses: actions/cache@v1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tm-binary
key: ${{ runner.os }}-${{ github.head_ref }}-tm-binary
if: "env.GIT_DIFF != ''"
- name: test_apps
run: test/app/test.sh