docs/naming-standards.md
# Naming Standards
## Project
- Main repo: `astracloud-idp`
- GitOps repo/folder: `astracloud-gitops`
- Platform prefix: `astra`
## Kubernetes Namespaces
| Purpose | Namespace |
|---|---|
| Argo CD | `argocd` |
| Backstage | `platform-backstage` |
| Harbor | `platform-harbor` |
| Jenkins | `platform-jenkins` |
| SonarQube | `platform-sonarqube` |
| Monitoring | `observability` |
| Security | `security` |
| Sample apps | `apps-dev`, `apps-prod` |
## Domains
| Service | Suggested Domain |
|---|---|
| Backstage | `portal.lakshaywalia.com` |
| Argo CD | `argocd.lakshaywalia.com` |
| Grafana | `grafana.lakshaywalia.com` |
| Harbor | `harbor.lakshaywalia.com` |
| Jenkins | `jenkins.lakshaywalia.com` |
| SonarQube | `sonar.lakshaywalia.com` |
| Keycloak | `auth.lakshaywalia.com` |
## Git Branches
- `main`: stable documentation and production-ready changes
- `dev`: active development
- `feature/<name>`: feature work
- `fix/<name>`: bug fixes
## Container Images
Format:
```text
harbor.lakshaywalia.com/apps/<service-name>:<git-sha>
```
Avoid:
```text
latest
```
## Labels
Required Kubernetes labels:
```yaml
app.kubernetes.io/name: service-name
app.kubernetes.io/part-of: astracloud-idp
app.kubernetes.io/managed-by: argocd
app.kubernetes.io/environment: dev
owner: lakshay
```