23d6e2e9b1
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
# HiveOps Deployment Environments
|
|
|
|
**Two repos, one per environment — no duplication.** Production config lives only in the prod
|
|
repo; dev config lives only in the dev repo.
|
|
|
|
| Env | Repo (cloned as) | Config path | Live URL | VM |
|
|
|-----|------------------|-------------|----------|----|
|
|
| **PRODUCTION** | `hiveiq-openmetal-prod` (`hiveiq-openmetal/`) | `hiveops/instances/services/` | bcos.cloud | 173.231.195.250 |
|
|
| **DEV / staging** | `hiveiq-openmetal-dev/` | `hiveops/instances/dev/` | bcos.dev | 173.231.195.251 |
|
|
|
|
Production also keeps its other instances in the **prod** repo: `database`, `browser`, `ollama`,
|
|
`logging`, and the `bcos-*` services (mail, office, share, proxy, gitea, odoo). **Dev is all-in-one**
|
|
— one VM bundles postgres/kafka/registry/etc that prod splits across VMs.
|
|
|
|
## Compare dev vs prod
|
|
The two repos are **structurally parallel** (`compose/<svc>.yml`, `nginx/conf.d/<svc>.conf`):
|
|
|
|
```bash
|
|
./compare-prod-dev.sh # drift summary — which configs differ or are env-only
|
|
./compare-prod-dev.sh incident # full diff of a specific service
|
|
# or diff directly:
|
|
diff hiveiq-openmetal-dev/hiveops/instances/dev/nginx/conf.d/api.conf \
|
|
hiveiq-openmetal/hiveops/instances/services/nginx/conf.d/api.conf
|
|
```
|
|
|
|
(For this to work, clone **both** repos side by side under this directory.)
|
|
|
|
## Source of truth
|
|
The live VMs are **hand-managed** (not git-fed). These repos are the **reference/backup** — keep
|
|
them in sync with the VMs whenever you change deployment config. `.env` **secrets are gitignored**:
|
|
they live only on the VMs and in **Vaultwarden** (`pw.bcos.cloud`).
|