Skip to content

Refactor smoke tests, add dynamic matrix calculated from overlay deps, rewrite test scripts in java (jbang)#9

Open
tomncooper wants to merge 1 commit intomainfrom
smoke-test-updates
Open

Refactor smoke tests, add dynamic matrix calculated from overlay deps, rewrite test scripts in java (jbang)#9
tomncooper wants to merge 1 commit intomainfrom
smoke-test-updates

Conversation

@tomncooper
Copy link
Copy Markdown
Contributor

This PR refactors the smoke tests so that we can work out dynamically what actually needs testing. If the metrics overlay uses the core overlay, there is no point also testing core.

  • Replace hardcoded overlay list with a computed test matrix that automatically discovers "leaf" overlays from kustomization.yaml dependency graphs (ComputeTestMatrix.java), ensuring new overlays are tested without manual workflow updates
  • Rewrite shell verification scripts (verify-install.sh, verify-uninstall.sh, debug.sh) as JBang Java scripts (VerifyInstall.java, VerifyUninstall.java, Debug.java) with shared utilities (ScriptUtils.java) for parsing kustomization files and checking resource readiness conditions
  • Consolidate duplicate smoke-minikube and smoke-kind workflow jobs into a single smoke-test job with a platform dimension in the matrix
  • Add per-overlay condition-overrides via test-matrix.yaml for resources that use non-default readiness conditions (e.g. monitoring.coreos.com=Available)
  • Remove static .env overlay configs in favor of dynamic discovery

@tomncooper tomncooper requested review from Frawless and kornys March 27, 2026 14:53
@tomncooper tomncooper force-pushed the smoke-test-updates branch 5 times, most recently from 8c9e673 to 39a1212 Compare March 27, 2026 16:45
Copy link
Copy Markdown
Member

@kornys kornys left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good overall I dont have anythint to use test in java using jbang. It is much more readable 🙂But please update versions of dependencies.

…ts in Java

* Replace hardcoded overlay list with a computed test matrix that
  automatically discovers "leaf" overlays from kustomization.yaml
  dependency graphs (ComputeTestMatrix.java), ensuring new overlays
  are tested without manual workflow updates
* Rewrite shell verification scripts (verify-install.sh,
  verify-uninstall.sh, debug.sh) as JBang Java scripts
  (VerifyInstall.java, VerifyUninstall.java, Debug.java) with shared
  utilities (ScriptUtils.java) for parsing kustomization files and
  checking resource readiness conditions
* Consolidate duplicate smoke-minikube and smoke-kind workflow jobs
  into a single smoke-test job with a platform dimension in the matrix
* Add per-overlay condition-overrides via test-matrix.yaml for
  resources that use non-default readiness conditions (e.g.
  monitoring.coreos.com=Available)
* Remove static .env overlay configs in favor of dynamic discovery

Signed-off-by: Thomas Cooper <code@tomcooper.dev>
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.

2 participants