P2-5a: Wildcard DNS Infrastructure

Status: Complete

Branch

feat/P2-5a-wildcard-infra (from phase-2)

Changes

  • infra/__main__.py: Added a second DnsComponent instance for *.wikibot.io
  • No changes to infra/components/dns.py — the existing component already supports wildcard domains

New Resources (7)

Resource Type
wildcard DnsComponent (parent)
wildcard-cert ACM Certificate for *.wikibot.io
wildcard-cert-validation Route 53 CNAME for DNS validation
wildcard-cert-validated ACM CertificateValidation
wildcard-domain API Gateway v2 DomainName
wildcard-mapping API Gateway v2 ApiMapping
wildcard-dns Route 53 A record (alias to API Gateway)

Verification

  • pulumi preview passes: +7 to create, 65 unchanged
  • dev.wikibot.io resources untouched
  • New export: wildcard_domain_url = https://*.wikibot.io

Design Notes

  • Separate cert for wildcard (not modifying dev cert) — simplest approach, avoids risk to existing setup
  • Wildcard A record + API mapping both point to the existing otterwiki_apigw API Gateway and stage
  • Multi-tenant routing (username.wikibot.io) will be handled at the application layer (P2-5b)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9