Skip to content

Run the hermetic integration suite in CI - #46

Merged
danieljhkim merged 1 commit into
mainfrom
orbit/DANI-10286-6a9cd414
Sep 6, 2026
Merged

danieljhkim merged 1 commit into
mainfrom
orbit/DANI-10286-6a9cd414

Conversation

@danieljhkim

Copy link
Copy Markdown
Owner

Task

DANI-10286 — Run the hermetic integration suite in CI

Description

At current main9c0ad8e91f22e91055ac7fbcb0b47cbba161e630, .github/workflows/ci.yml runs go test ./... and go test -race ./internal/... but no integration build tag. Makefile test-integration discovers and executes go test -tags=integration ./test/integration; it is explicitly hermetic and needs no Hadoop/Hive installation. DANI-10280's worker could not complete this target within its governed command timeout and deferred to CI, but main CI34007028578 success does not include that suite. Add the documented hermetic integration target to normal PR/main CI and establish actual execution. This is a coverage gap, not a claimed failing integration test. All-status search hermetic integration CI found no covering task. Preserve removed Docker runtime checks: this suite must remain host-native and hermetic.

Acceptance Criteria

  • CI on PRs and main invokes the existing make test-integration target so named tests are discovered and actually run.
  • A published candidate CI log shows nonzero named integration tests and a successful complete run; failures are fixed or routed with exact evidence, never hidden.
  • No Docker runtime dependency, live Hadoop/Hive setup, test weakening, or continue-on-error is introduced.
  • Workflow syntax validation passes and execution stays within a justified bounded job timeout.

Execution Summary

Click to expand

Outcome: success
Changes:

  • Added a Hermetic integration test step to .github/workflows/ci.yml that invokes the existing make test-integration target for both pull_request and main push events.
  • Kept the existing Ubuntu host-native job and 15-minute timeout; introduced no Docker runtime, live Hadoop/Hive setup, test weakening, or continue-on-error.

Validation:

  • make test-integration: passed in 32.150s; discovered and executed 7 named tests: TestHermeticLifecycleAndWrappers, TestStatusAndStopUseRuntimeStateWhenStartupConfigDisappears, TestEnvExecAndWrapperPreserveChildExitCodesAndStreams, TestNativeValidationAndLaunchErrorsRemainReadable, TestDownstreamStartupFailureStopsDispatch, TestHDFSReadinessTimeoutUsesActiveOverlay, and TestStalePIDOwnershipMismatchDoesNotKillUnrelatedProcess. Go reported PASS for the integration package.
  • go run github.com/rhysd/actionlint/cmd/actionlint@v1.7.12 .github/workflows/ci.yml .github/workflows/release.yml: passed with exit code 0 using a temporary module cache and GOSUMDB=off GOTOOLCHAIN=local; the default cache location was not writable in this runner.
  • git diff --check: passed.
  • Final scope check: only .github/workflows/ci.yml is modified, with 3 insertions.

Assessment: The normal PR/main CI path now executes the hermetic integration suite and fails closed on discovery or test failures through the existing Make target. The published candidate CI log remains pipeline-owned after this change is delivered.

Validation

  • Not reported

Branch Freshness

  • Base ref: origin/main
  • Head ref: orbit/DANI-10286-6a9cd414
  • Behind base: 0
  • Ahead of base: 1

@danieljhkim
danieljhkim merged commit d7b10a2 into main Sep 6, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant