- name: Tests
- # Tests runs different tests (test_abci_apps, test_abci_cli, test_apps)
- # This workflow runs on every push to master or release branch and every pull requests
- # All jobs will pass without running if no *{.go, .mod, .sum} files have been modified
- on:
- pull_request:
- push:
- branches:
- - master
- - 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/master'"
-
- build:
- name: Build
- runs-on: ubuntu-latest
- timeout-minutes: 5
- steps:
- - uses: actions/setup-go@v2
- with:
- go-version: "^1.15.4"
- - uses: actions/checkout@v2
- - uses: technote-space/get-diff-action@v4
- with:
- PATTERNS: |
- **/**.go
- go.mod
- go.sum
- - name: install
- run: make install install_abci
- if: "env.GIT_DIFF != ''"
- - uses: actions/cache@v2.1.2
- with:
- path: ~/go/pkg/mod
- key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
- if: env.GIT_DIFF
- # Cache binaries for use by other jobs
- - uses: actions/cache@v2.1.2
- with:
- path: ~/go/bin
- key: ${{ runner.os }}-${{ github.sha }}-tm-binary
- if: env.GIT_DIFF
-
- test_abci_apps:
- runs-on: ubuntu-latest
- needs: build
- timeout-minutes: 5
- steps:
- - uses: actions/setup-go@v2
- with:
- go-version: "^1.15.4"
- - uses: actions/checkout@v2
- - uses: technote-space/get-diff-action@v4
- with:
- PATTERNS: |
- **/**.go
- go.mod
- go.sum
- - uses: actions/cache@v2.1.3
- with:
- path: ~/go/pkg/mod
- key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
- if: env.GIT_DIFF
- - uses: actions/cache@v2.1.2
- with:
- path: ~/go/bin
- key: ${{ runner.os }}-${{ github.sha }}-tm-binary
- if: env.GIT_DIFF
- - name: test_abci_apps
- run: abci/tests/test_app/test.sh
- shell: bash
- if: env.GIT_DIFF
-
- test_abci_cli:
- runs-on: ubuntu-latest
- needs: build
- timeout-minutes: 5
- steps:
- - uses: actions/setup-go@v2
- with:
- go-version: "^1.15.4"
- - uses: actions/checkout@v2
- - uses: technote-space/get-diff-action@v4
- with:
- PATTERNS: |
- **/**.go
- go.mod
- go.sum
- - uses: actions/cache@v2.1.3
- with:
- path: ~/go/pkg/mod
- key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
- if: env.GIT_DIFF
- - uses: actions/cache@v2.1.2
- with:
- path: ~/go/bin
- key: ${{ runner.os }}-${{ github.sha }}-tm-binary
- if: env.GIT_DIFF
- - run: abci/tests/test_cli/test.sh
- shell: bash
- if: env.GIT_DIFF
-
- test_apps:
- runs-on: ubuntu-latest
- needs: build
- timeout-minutes: 5
- steps:
- - uses: actions/setup-go@v2
- with:
- go-version: "^1.15.4"
- - uses: actions/checkout@v2
- - uses: technote-space/get-diff-action@v4
- with:
- PATTERNS: |
- **/**.go
- go.mod
- go.sum
- - uses: actions/cache@v2.1.3
- with:
- path: ~/go/pkg/mod
- key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- restore-keys: |
- ${{ runner.os }}-go-
- if: env.GIT_DIFF
- - uses: actions/cache@v2.1.2
- with:
- path: ~/go/bin
- key: ${{ runner.os }}-${{ github.sha }}-tm-binary
- if: env.GIT_DIFF
- - name: test_apps
- run: test/app/test.sh
- shell: bash
- if: env.GIT_DIFF
|