Skip to content

Bolt: CI-gate all five per-language suites + nightly scheduled run #4891

Description

@robfrank

Part of #4882.

Motivation

Bolt-related suites (bolt module unit/IT, Java e2e, JS e2e) are already PR-gating in mvn-test.yml; Python and C# e2e exist but currently test Postgres-wire only, and Go e2e doesn't exist yet (added by Group B). Confirmed: no scheduled workflow anywhere touches any Bolt-related suite - the only cron-triggered workflows are benchmark-tests, ha-resilience-tests, load-tests, license-compliance, studio-security-audit. Also confirmed: JS/Python/C# e2e jobs have no JUnit-style test-report aggregation (only Java suites use dorny/test-reporter), so even current runs don't produce a comparable, publishable artifact.

Proposed design

  • Once the Python, C#, and Go Group B issues land, their Bolt scenarios run inside the existing python-e2e-tests/csharp-e2e-tests jobs and the new go-e2e-tests job - all already needs: build-and-package in mvn-test.yml, so no new PR-gating wiring needed beyond what Group B adds.
  • Add dorny/test-reporter (or equivalent JUnit-consuming step) to js-e2e-tests, python-e2e-tests, csharp-e2e-tests, and the new go-e2e-tests jobs, matching the pattern already used for unit-tests/integration-tests/java-e2e-tests.
  • Add a new scheduled workflow (or extend mvn-test.yml with a schedule: trigger gated to a nightly job) that runs all five Bolt suites against the full pinned driver-version matrix from A1 (not just the single version each PR run tests).
  • Emit results in a consistent, machine-readable location (e.g. a per-language JSON/JUnit summary) for the compatibility-matrix publishing issue to consume.

Acceptance criteria

  • All five per-language Bolt suites are PR-gating (three already are; Group B adds Python/C#/Go Bolt scenarios and the Go job).
  • JUnit-style report aggregation added to JS/Python/C#/Go e2e jobs.
  • A nightly scheduled workflow runs all five suites against the full pinned driver-version matrix.
  • Aggregated results are emitted in a format the publishing issue can consume.

Dependencies

Depends on Group B (all five per-language suites) landing (their scenarios are what CI gates).

Effort estimate

M - mostly CI/workflow authoring; the underlying test jobs and Docker-image build pipeline already exist.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestgithub_actionsPull requests that update GitHub Actions code

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions