Merge pull request #127 from b2network/fix-multi-script #296
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
- dev | |
- release/** | |
jobs: | |
cleanup-runs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: rokroskar/workflow-run-cleanup-action@master | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
if: "!startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/main'" | |
test-unit-cover: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
go-version: 1.20.11 | |
check-latest: true | |
- uses: actions/checkout@v3 | |
- uses: technote-space/[email protected] | |
with: | |
PATTERNS: | | |
**/**.sol | |
**/**.go | |
go.mod | |
go.sum | |
- name: Test and Create Coverage Report | |
run: | | |
make test-unit-cover | |
if: env.GIT_DIFF | |
- uses: codecov/codecov-action@v3 | |
with: | |
file: ./coverage.txt | |
fail_ci_if_error: true | |
token: ${{ secrets.CODECOV_TOKEN }} | |
if: env.GIT_DIFF | |
test-importer: | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: 1.19 | |
check-latest: true | |
- uses: actions/checkout@v3 | |
- uses: technote-space/[email protected] | |
id: git_diff | |
with: | |
PATTERNS: | | |
**/**.go | |
go.mod | |
go.sum | |
- name: test-importer | |
run: | | |
make test-import | |
if: env.GIT_DIFF | |
test-rpc: | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: 1.19 | |
check-latest: true | |
- uses: actions/checkout@v3 | |
- uses: technote-space/[email protected] | |
with: | |
PATTERNS: | | |
**/**.sol | |
**/**.go | |
go.mod | |
go.sum | |
- name: Test rpc endpoint | |
run: | | |
make test-rpc | |
if: env.GIT_DIFF | |
integration_tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v23 | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: b2-node | |
signingKey: "${{ secrets.CACHIX_SIGNING_KEY }}" | |
- uses: technote-space/[email protected] | |
with: | |
PATTERNS: | | |
**/**.sol | |
**/**.go | |
go.mod | |
go.sum | |
tests/integration_tests/** | |
- name: Run integration tests | |
run: make run-integration-tests | |
if: env.GIT_DIFF | |
- name: 'Tar debug files' | |
if: failure() | |
run: tar cfz debug_files.tar.gz -C /tmp/pytest-of-runner . | |
- uses: actions/upload-artifact@v3 | |
if: failure() | |
with: | |
name: debug-files | |
path: debug_files.tar.gz | |
if-no-files-found: ignore | |
upload-cache: | |
if: github.event_name == 'push' | |
needs: ["integration_tests"] | |
strategy: | |
matrix: | |
os: [macos-latest] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cachix/install-nix-action@v23 | |
- uses: cachix/cachix-action@v12 | |
with: | |
name: b2-node | |
signingKey: "${{ secrets.CACHIX_SIGNING_KEY }}" | |
- name: 'instantiate integration test env' | |
run: nix-store -r "$(nix-instantiate tests/integration_tests/shell.nix)" |