Skip to content

Reduce CI duration by modifying e2e test execution strategy #2105

Reduce CI duration by modifying e2e test execution strategy

Reduce CI duration by modifying e2e test execution strategy #2105

name: CIT Cassandra
on:
workflow_call:
schedule:
- cron "0 0 * * *"
concurrency:
group: cit-cassandra-${{ github.workflow }}-${{ (github.event.pull_request && github.event.pull_request.number) || github.ref || github.run_id }}
cancel-in-progress: true
# See https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions
permissions: # added using https://github.com/step-security/secure-workflows
contents: read
jobs:
cassandra:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
jaeger-version: [v1, v2]
create-schema: [manual, auto]
cassandra-version: ${{ fromJSON(env.cassandra-version) }}
version:
- distribution: cassandra
schema: v004
exclude:
# Exclude v1 as create schema on fly is available for v2 only
- jaeger-version: v1
create-schema: auto
env:
cassandra-version: ${{ github.event_name == 'schedule' && '[4.x, 5.x]' || '[5.x]' }}
name: ${{ matrix.version.distribution }}-${{ matrix.cassandra-version }} ${{ matrix.jaeger-version }} schema=${{ matrix.create-schema }}
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
- uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed # v5.1.0
with:
go-version: 1.23.x
- name: Run cassandra integration tests
id: test-execution
run: bash scripts/cassandra-integration-test.sh ${{ matrix.cassandra-version }} ${{ matrix.version.schema }} ${{ matrix.jaeger-version }}
env:
SKIP_APPLY_SCHEMA: ${{ matrix.create-schema == 'auto' && true || false }}
- name: Upload coverage to codecov
uses: ./.github/actions/upload-codecov
with:
files: cover.out
flags: cassandra-${{ matrix.cassandra-version }}-${{ matrix.jaeger-version }}-${{ matrix.create-schema }}