diff --git a/registry/capabilities/capability.railiance.infra-provisioning.md b/registry/capabilities/capability.railiance.infra-provisioning.md new file mode 100644 index 0000000..a66ab42 --- /dev/null +++ b/registry/capabilities/capability.railiance.infra-provisioning.md @@ -0,0 +1,131 @@ +--- +id: capability.railiance.infra-provisioning +name: RailianceHosts Infrastructure Provisioning +summary: Git-driven server provisioning and convergence for Hosteurope/Hetzner Cloud using Terraform, + cloud-init, and Ansible, with SOPS+age encrypted in-repo secrets and a servers.yaml inventory as source + of truth. +owner: railiance-infra +status: draft +domain: financials +tags: +- railiance +- terraform +- ansible +- infrastructure +maturity: + discovery: + current: D4 + target: D5 + confidence: high + rationale: README documents a complete, concrete quickstart (clone, prerequisites, SOPS/age secrets + setup, provider setup, terraform apply, ansible convergence) with a specific inventory file (`inventory/servers.yaml`) + as source of truth — an unusually complete operational README among the swept repos. + availability: + current: A2 + target: A3 + confidence: high + rationale: Real ansible playbooks, terraform config, and scripts/tools present; has `.forgejo/` CI + already; documented as the S1 Infrastructure Substrate layer of the Railiance OAS Stack. +external_evidence: + completeness: + level: C2 + confidence: low + basis: scope_vs_intent_and_consumer_expectations + satisfied_expectations: + - documented end-to-end quickstart from bare cloud account to converged servers + - SOPS+age encrypted secrets with a documented key-custody model + - inventory/servers.yaml as explicit source of truth + broken_expectations: [] + out_of_scope_expectations: [] + reliability: + level: R1 + confidence: low + basis: consumer_quality_signals + known_reliability_risks: + - reproducibility not independently re-verified via a live provisioning run in this sweep +discovery: + intent: Provision and manage servers on Hosteurope/Hetzner Cloud entirely from Git — Terraform for lifecycle, + cloud-init for first boot, Ansible for convergence — as the S1 Infrastructure Substrate of the Railiance + OAS Stack. + includes: + - Terraform server lifecycle management + - cloud-init first-boot configuration + - Ansible convergence playbooks + - SOPS+age encrypted secrets in-repo + excludes: + - Kubernetes cluster bootstrap on top of provisioned hosts (see railiance-cluster) + - platform services (see railiance-platform) + assumptions: [] + use_cases: [] + research_memos: [] +availability: + current_level: A2 + target_level: A3 + current_artifacts: + - Terraform configs + - Ansible playbooks + - scripts/ + - tools/ + target_artifacts: [] + consumption_modes: + - cli (terraform/ansible) + - gitops +relations: + depends_on: [] + supports: [] + related_to: [] +evidence: + documentation: + - README.md + - SCOPE.md + tests: + - sbom-tools.yaml + - .forgejo/ + consumer_feedback: [] + bug_reports: [] + incidents: [] +consumer_guidance: + recommended_for: + - operators provisioning Railiance bare-metal/cloud hosts from Git with encrypted-secret custody + not_recommended_for: + - needs above the OS/host substrate layer (see railiance-cluster for Kubernetes, railiance-platform + for shared services) + known_limitations: + - reproducibility not independently re-verified via a live provisioning run in this sweep +promotion_history: [] +--- + +# RailianceHosts Infrastructure Provisioning + +## Overview + +`railiance-infra` (RailianceHosts) is Git-driven automation for provisioning and converging servers on Hosteurope and Hetzner Cloud — Terraform for lifecycle, cloud-init for first boot, Ansible for convergence — with secrets encrypted in-repo via SOPS/age and `inventory/servers.yaml` as the source of truth. It is the S1 Infrastructure Substrate layer of the Railiance OAS Stack. + +## Assessment notes + +### Discovery + +README documents a complete, concrete quickstart (clone, prerequisites, SOPS/age secrets setup, provider setup, terraform apply, ansible convergence) with a specific inventory file (`inventory/servers.yaml`) as source of truth — an unusually complete operational README among the swept repos. + +### Availability + +Real ansible playbooks, terraform config, and scripts/tools present; has `.forgejo/` CI already; documented as the S1 Infrastructure Substrate layer of the Railiance OAS Stack. + +### Completeness + +First-pass honest assessment from the REUSE-WP-0017 coverage campaign +(reuse-surface). No external consumer feedback exists yet; levels reflect +scope-vs-intent documentation quality, not internal code quality. + +### Reliability + +No production consumer telemetry exists yet; reliability level is +intentionally conservative pending REUSE-WP-0019 reuse-telemetry evidence. + +## Promotion checklist + +- [x] ID follows `capability..` pattern +- [x] Maturity enums match `specs/CapabilityMaturityStandard.md` +- [x] `external_evidence` is populated separately from `maturity` +- [ ] Relations reference valid capability IDs (none yet) +- [x] Index entry added in `registry/indexes/capabilities.yaml` diff --git a/registry/indexes/capabilities.yaml b/registry/indexes/capabilities.yaml index f944e47..6a463c2 100644 --- a/registry/indexes/capabilities.yaml +++ b/registry/indexes/capabilities.yaml @@ -1,4 +1,22 @@ version: 1 -updated: '2026-06-16' +updated: '2026-07-06' domain: helix_forge -capabilities: [] +capabilities: +- id: capability.railiance.infra-provisioning + name: RailianceHosts Infrastructure Provisioning + summary: Git-driven server provisioning and convergence for Hosteurope/Hetzner Cloud using Terraform, + cloud-init, and Ansible, with SOPS+age encrypted in-repo secrets and a servers.yaml inventory as source + of truth. + vector: D4 / A2 / C2 / R1 + domain: financials + status: draft + owner: railiance-infra + path: registry/capabilities/capability.railiance.infra-provisioning.md + tags: + - railiance + - terraform + - ansible + - infrastructure + consumption_modes: + - cli (terraform/ansible) + - gitops