feat(infra): infra-request dispatch handler + contabo-k3s-node module + consumer test-harness (resolves #33) - #34
Merged
Conversation
…sumer test-harness Adds the FuzeInfra handler side for the infra-request dispatch model where consumer repos declare infra needs in git and dispatch to FuzeInfra (the sole credential holder) to reconcile. - modules/contabo-k3s-node: TF module that provisions Contabo VPS(es) and joins each to the existing k3s cluster as an agent via cloud-init, labeling node-role=<role>; optional contabo_private_network attach. Creds + k3s join token are variables (never hardcoded). - docs/workflows/infra-request-handler.yml: repository_dispatch handler — validates each request against an auto-apply whitelist, auto-applies (TF apply + node label + argocd sync) when whitelisted, else opens a gated PR with terraform plan. (Lives under docs/ because the bot cannot write .github/workflows.) - config/infra-request-whitelist.json + scripts-tools/validate_infra_request.py (+ tests): editable whitelist (product_id tier, region==EU, role==workload, bounded node count, allowed repos) and its validator. - docs/INFRA_REQUEST_DISPATCH.md: architecture + scoped FUZEINFRA_DISPATCH_TOKEN setup (fine-grained PAT / GitHub App) for consumers. - docker-compose.consumer-test.yml + versions.env: version-accurate ephemeral base services (Postgres/Redis/Kafka/ChromaDB/MailHog) for consumer CI, pinned from a single source of truth. docs/CONSUMER_TEST_HARNESS.md documents usage. Refs #33 Co-authored-by: Israel Weinberg <izzywdev@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Opening the @claude branch for review (auto-PR gap). NOTE: the handler workflow is parked under docs/workflows/ and must be moved to .github/workflows/ by an admin/PAT with workflow scope to activate. Needs prod-safety review before merge. Resolves #33.