name: Continuous Integration (Default Checks) on: workflow_call: jobs: build: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: go.mod cache-dependency-path: | go.sum tests/e2e/kvtool/go.sum - name: build application run: make build test: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 with: submodules: true - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: go.mod cache-dependency-path: | go.sum tests/e2e/kvtool/go.sum - name: run unit tests run: make test - name: run e2e tests run: make docker-build test-e2e fuzz: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 with: submodules: true - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: go.mod cache-dependency-path: | go.sum - name: run fuzz tests run: make test-fuzz ibc-test: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: tests/e2e-ibc/go.mod cache-dependency-path: tests/e2e-ibc/go.sum - name: run ibc e2e tests run: make test-ibc validate-internal-testnet-genesis: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 - name: save version of kava that will be deployed if this pr is merged id: kava-version run: | echo "KAVA_VERSION=$(cat ./ci/env/kava-internal-testnet/KAVA.VERSION)" >> $GITHUB_OUTPUT - name: checkout version of kava that will be deployed if this pr is merged uses: actions/checkout@v4 with: ref: ${{ steps.kava-version.outputs.KAVA_VERSION }} - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: go.mod - name: build kava cli run: make install - name: checkout repo from current commit to validate current branch's genesis uses: actions/checkout@v4 - name: validate testnet genesis run: kava validate-genesis ci/env/kava-internal-testnet/genesis.json validate-protonet-genesis: runs-on: ubuntu-latest steps: - name: checkout repo from current commit uses: actions/checkout@v4 - name: Set up Go uses: actions/setup-go@v4 with: go-version-file: go.mod - name: build kava cli run: make install - name: validate protonet genesis run: kava validate-genesis ci/env/kava-protonet/genesis.json