DNS Naming Convention
Overview
Consistent hostnames make environments predictable, simplify certificate and ingress management, and let tooling derive URLs instead of hardcoding them. Follow this convention for every new subdomain across all company domains.
Naming Structure
Standard Format
- Dot-separated segments — never hyphenated environment prefixes (
dev-cmsis the legacy style) - Environment first, then the component, then the domain
- Production drops the environment prefix entirely
Examples
# Development
dev.ai-ml-platform.azmx.sa
dev.cms.azmx.sa
dev.admin.goanatomi.ai
# Staging
staging.api.goanatomi.ai
staging.cms.azmx.sa
# Production (no environment prefix)
api.goclix.ai
cms.azmx.sa
Quick Reference
| Environment | Pattern | Example |
|---|---|---|
| Development | dev.<component>.<domain> |
dev.api.goanatomi.ai |
| Staging | staging.<component>.<domain> |
staging.api.goanatomi.ai |
| Production | <component>.<domain> |
api.goanatomi.ai |
Applies to all company domains: azmx.sa, goanatomi.ai, goclix.ai.
No Hardcoded Hostnames
Hostnames must never be hardcoded in application code or in configuration files committed to a repository. Inject them through environment variables or secrets only.
This keeps the same build deployable to any environment and makes DNS migrations a configuration change rather than a code change.
Legacy Hostnames to Migrate
The following hostnames predate this convention and use the hyphenated style. Migrate them when convenient (e.g., alongside other work on the affected service):
| Current (legacy) | Target |
|---|---|
admin-dev.goanatomi.ai |
dev.admin.goanatomi.ai |
dev-cms.azmx.sa |
dev.cms.azmx.sa |
dev-ar.azmx.sa |
dev.ar.azmx.sa |
Open question
Confirm whether www.goclix.ai intentionally points at the dev website app. If not, repoint it to the production website before migrating the dev hostname.
Related Documentation
- Environment Setup Guide — environment variable templates
- CI/CD Requirements — deployment pipeline standards