feat: add runner backplane & e2e test to noop#201
Conversation
Scorecard Check
📊 meshstack-hub Module Scorecard
📋 Per-Module Category SummaryScore per category per building block.
Core Structure — ✅ all passingBasic module file structure and documentation — applies to 1 modules
Core Structure — Summary
Integration — ✅ all passingmeshstack_integration.tf conventions — applies to 1 modules
Integration — Summary
Azure Backplane — not applicableAzure UAMI-based automation principal conventions — applies to 0 modules No applicable modules. STACKIT Backplane — not applicableSTACKIT WIF-based automation principal conventions — applies to 0 modules No applicable modules. Testing — ✅ all passingEnd-to-end test coverage — applies to 1 modules
Testing — Summary
|
|
👋 Hi @Jelledb! This PR has been linked to the Feature Shipping Tracker: BuildingBlockRunner API (meshBuildingBlockRunner meshObject) (meshcloud/janny#1025) under DoD item 6 (Reference Examples Updated). The noop backplane for Google Cloud Run and the e2e runner test you are adding here directly address the open meshstack-hub example we have been tracking for the self-hosted runner workflow. 🎉 Merging this will help close out that DoD item. |
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
There was a problem hiding this comment.
Pull request overview
This PR extends the meshstack/noop building block to support dispatching runs to a dedicated meshStack “building block runner” and adds an E2E test fixture that provisions a Cloud Run–hosted runner backplane and executes the noop building block against it.
Changes:
- Add optional
runner_refwiring to the noop building block definition (version_spec.runner_ref). - Introduce a new GCP Cloud Run “backplane” module that provisions secrets, an API key, and registers a meshStack runner.
- Add a new E2E runner test module +
tftest.hclrun that provisions the backplane and asserts noop run outputs.
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| modules/meshstack/noop/meshstack_integration.tf | Adds optional runner_ref variable and forwards it into the BBD version spec. |
| modules/meshstack/noop/e2e/tests/building_block_noop_runner_hub.tftest.hcl | Adds a new terraform test run to validate noop execution via a custom runner module. |
| modules/meshstack/noop/e2e/runner/variables.tf | Defines inputs for the runner E2E module (test context, GCP, meshStack endpoint). |
| modules/meshstack/noop/e2e/runner/terraform.tf | Declares provider requirements for the runner E2E module. |
| modules/meshstack/noop/e2e/runner/provider.tf | Configures providers for the runner E2E module (currently only Google). |
| modules/meshstack/noop/e2e/runner/main.tf | Provisions the backplane + noop module and triggers a building block run for assertions. |
| modules/meshstack/noop/backplane/versions.tf | Introduces Terraform/provider version constraints for the backplane module. |
| modules/meshstack/noop/backplane/variables.tf | Defines backplane inputs (workspace, endpoint, runner naming, GCP settings). |
| modules/meshstack/noop/backplane/runner-config.yml | Runner config template rendered into Secret Manager for Cloud Run consumption. |
| modules/meshstack/noop/backplane/README.md | Documents the new Cloud Run runner backplane module and its outputs. |
| modules/meshstack/noop/backplane/provider.tf | Configures Google + meshStack providers for the backplane module. |
| modules/meshstack/noop/backplane/outputs.tf | Exposes runner_ref and Cloud Run service URL outputs. |
| modules/meshstack/noop/backplane/main.tf | Provisions TLS keypair, meshStack API key, secrets, IAM bindings, Cloud Run service, and runner registration. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e8bb0b1 to
8506605
Compare
3c988f3 to
6dcb248
Compare
6dcb248 to
926d282
Compare
926d282 to
c69f2e2
Compare
No description provided.