Repository navigation
Replies: 1 comment
Update — as-built tree structure (Oct 2026)The proposal above has been implemented on branch Goal it delivers: MOSIP infra deploys on AWS (Terraform + Ansible, fully automated) and on any pre-created VMs — data centre, Azure, GCP — with the same Ansible and no Terraform. Ships as a new feature release. Final treeRetired: How the two paths meetOrder is the legacy monolith's Proposed vs. built
PRs (all draft, base
|
| PR | Issues |
|---|---|
| #406 decoupled roots + parity tests | closes #274–#277 |
| #407 agnostic Ansible layer | closes #278–#281, #301 |
| #408 one root per component, profiles, legacy retired, new CI | closes #282 |
| #409 multi-zone DNS, zone-scoped certbot IAM | part of #353 |
#410 IAM before compute, vm component |
closes #405 |
| #411 data-centre guide, docs + diagrams aligned | part of #352 |
Verified: 52 terraform test runs, 7 roots validate, 14 generator unit tests, site.yml syntax per profile, all PR checks green. Not yet: a real AWS apply and a real data-centre run.
Feedback welcome on any row — especially Azure/GCP provisioning priority and whether #352/#353 should be closed as "covered by the agnostic path" or kept open for Terraform providers.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Context
Issue #273 is decoupling the monolithic
aws-resource-creationTerraform module into independently-stateful layers. #274–#277 are done on the fork branch linked below — not yet merged todevelop, no PR opened yet; #278–#281 (Layer 3) turned out to already be decoupled a different way — see the table below. #352 and #353, linked under #273's sub-task checklist, extend the same effort to adatacenterprovisioning target and a GoDaddy-capable DNS abstraction, respectively.This discussion is about the repository tree structure only — current (as-built) vs. proposed (future) — asking whether the proposed structure will actually hold up.
For reference: work-in-progress on fork
bhumi46/infra, branchGH-issue-273— not yet opened as a PR todevelop.Current vs. future: what's different
docs/TREE_STRUCTURE.md)docs/TREE_STRUCTURE_FUTURE.md)aws-resource-creationmonolith (security groups, EC2, EBS, Route53, IAM)PROVISIONING_COMPONENTis leftnone) and 5 independent Terraform roots, each its own state —security(#274),compute(#275, EC2),storage(#276, EBS),dns(#277, Route53),iam.azure/gcphave no split at all yet — still single monolithic modules.aws-resource-creationretires once Layer 3 also has no legacy path left (see row below);azure/gcpgain the same 5-way split (no issue filed for this part yet)ansible/<component>/tree, wired up via a dedicated CIconfigurejobansible/<component>/becomes the only implementation, reused unchanged across every compute provider — Ansible runs over SSH and doesn't care who provisioned the hostdns-providers/abstraction — Route53 / Azure DNS / Cloud DNS / GoDaddy — selectable independently of compute provider (#353).tfvars, rendersinventory.ymlansible/inventory.example.ymlcovers configuring already-existing on-prem hosts, but there's no Terraform-equivalent that provisions a data centerdatacentercompute-provisioning target, mirroring theawslayered split (#352) — this row has no "current" side, it's a net-new additiondocs/TREE_STRUCTURE.mddocs/TREE_STRUCTURE_FUTURE.mdAsk
Does the proposed structure above hold up — anything that looks structurally wrong, missing, or unnecessary before this becomes an implementation plan? Comments welcome on any row of the table.
All reactions