Skip to content

Add the production hostname to adopted tenant routes #99

Description

@devantler

🤖 Generated by the Agentic Engineer (Codex routine).

Evidence

At current gitops-tenant-template main 70584699c39810f76455466645844789aa858898, deploy/httproute.yaml carries only app.platform.lan, and scripts/rename-placeholders.sh only turns that value into <tenant>.platform.lan.

Current Platform main 6b67c9454e73fe7faf94d3be39bf874ba194b8e1 defines platform.lan for local and platform.devantler.tech for production. Its tenant contract says routes must list local, production, and custom hostnames in the tenant artifact; each Gateway selects the matching listener safely.

Audience and impact

Every new adopter gets a route that works locally but omits the standard production hostname, so a scaffold can pass admission while its default production user path is unreachable.

Hypothesis and success signal

If the scaffold carries both Platform hostnames and the rename helper preserves both, a freshly adopted tenant will render the expected local and production routes without extra manual edits. Success is a renamed render containing exactly <tenant>.platform.lan and <tenant>.platform.devantler.tech, with custom hostnames left unchanged.

Smallest useful change

  • Add the standard production hostname beside the local hostname in deploy/httproute.yaml.
  • Extend the rename helper and its tests to produce both tenant-specific hostnames without rewriting custom domains.
  • Document the local, production, and optional custom hostname contract.
  • Bind the scaffold check to both live Platform domain sources so future domain drift fails closed.

Acceptance criteria

  • The unrenamed scaffold declares both app.platform.lan and app.platform.devantler.tech.
  • Renaming to demo produces exactly demo.platform.lan and demo.platform.devantler.tech and leaves an unrelated custom hostname byte-identical.
  • A fail-closed check derives both current Platform domains and rejects a missing or incorrect scaffold hostname.
  • Negative controls cover removing either hostname, changing the production suffix, broadening replacement into a custom hostname, and removing either Platform domain source.
  • The complete scaffold and onboarding validation passes from a separate checkout.

Rough size: S

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

Status
✅ Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions