name: Tests / Code Coverage on: pull_request: merge_group: push: branches: - main permissions: contents: read concurrency: group: ci-${{ github.ref }}-tests cancel-in-progress: true jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v4 with: go-version: 1.20.2 cache: true cache-dependency-path: go.sum - uses: technote-space/get-diff-action@v6.1.2 id: git_diff with: PATTERNS: | **/*.go go.mod go.sum - name: Unit Tests if: env.GIT_DIFF run: | make test # TODO: Add this back once we have a working version of v0.50.0 with ITS and v0.47.x # test-integration: # runs-on: ubuntu-latest # timeout-minutes: 25 # steps: # - uses: actions/checkout@v3 # - uses: technote-space/get-diff-action@v6.1.2 # with: # PATTERNS: | # **/**.go # go.mod # go.sum # - uses: actions/setup-go@v4 # if: env.GIT_DIFF # with: # go-version: "1.20" # cache: true # # In this step, this action saves a list of existing images, the cache is # # created without them in the post run. It also restores the cache if it # # exists. # - name: cache docker layer # uses: satackey/action-docker-layer-caching@v0.0.11 # if: env.GIT_DIFF # # Ignore the failure of a step and avoid terminating the job. # continue-on-error: true # - name: Integration Tests # if: env.GIT_DIFF # run: | # make test-integration