refactor(inventory): Update punimTag project configurations and environment variables
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m32s
CI / lint-and-test (pull_request) Successful in 1m36s
CI / ansible-validation (pull_request) Successful in 3m5s
CI / secret-scanning (pull_request) Successful in 1m33s
CI / dependency-scan (pull_request) Successful in 1m39s
CI / sast-scan (pull_request) Successful in 2m39s
CI / license-check (pull_request) Successful in 1m37s
CI / vault-check (pull_request) Successful in 2m31s
CI / playbook-test (pull_request) Successful in 2m42s
CI / container-scan (pull_request) Successful in 2m4s
CI / sonar-analysis (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m30s

- Renamed punimTagFE to punimTag for consistency in project naming.
- Updated environment variable configurations for punimTag, including backend and frontend settings.
- Added backend support for punimTag with appropriate commands for deployment and migration.
- Adjusted environment variables for dev, qa, and prod environments to reflect new project structure.
- Ensured all changes maintain backward compatibility with existing configurations.

This refactor aims to streamline the project setup and improve clarity in the inventory structure.
This commit is contained in:
ilia 2026-01-10 15:19:07 -05:00
parent 0a937fd1b4
commit 62a22812a3
2 changed files with 55 additions and 64 deletions

View File

@ -100,8 +100,7 @@ app_frontend_start_cmd: "npm start"
# Proxmox IDs are global. Never reuse IDs across unrelated guests. # Proxmox IDs are global. Never reuse IDs across unrelated guests.
# Suggested reservation table (edit to your preference): # Suggested reservation table (edit to your preference):
# - 9000-9099: pote # - 9000-9099: pote
# - 9100-9199: punimTagFE # - 9100-9199: punimTag (monorepo)
# - 9200-9299: punimTagBE
# - 9300-9399: projectA (example) # - 9300-9399: projectA (example)
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------
app_projects: app_projects:
@ -205,59 +204,13 @@ app_projects:
gateway: "10.0.10.1" gateway: "10.0.10.1"
branch: "main" branch: "main"
punimTagFE: punimTag:
description: "punimTag frontend-only project (edit repo_url, IPs, secrets)." description: "punimTag monorepo (frontend + backend, edit repo_url, IPs, secrets)."
repo_url: "git@github.com:example/punimTagFE.git" repo_url: "git@github.com:example/punimTag.git"
repo_dest: "/srv/app"
components:
backend: false
frontend: true
guest_defaults:
guest_type: "{{ proxmox_guest_type }}"
cores: 2
memory_mb: 2048
swap_mb: 512
rootfs_size_gb: 16
deploy:
frontend_install_cmd: "{{ app_frontend_install_cmd }}"
frontend_build_cmd: "{{ app_frontend_build_cmd }}"
frontend_start_cmd: "{{ app_frontend_start_cmd }}"
envs:
dev:
name: "punimTagFE-dev"
vmid: 9101
ip: "10.0.10.121/24"
gateway: "10.0.10.1"
branch: "dev"
env_vars:
APP_ENV: "dev"
SECRET_PLACEHOLDER: "change-me"
qa:
name: "punimTagFE-qa"
vmid: 9102
ip: "10.0.10.122/24"
gateway: "10.0.10.1"
branch: "qa"
env_vars:
APP_ENV: "qa"
SECRET_PLACEHOLDER: "change-me"
prod:
name: "punimTagFE-prod"
vmid: 9103
ip: "10.0.10.123/24"
gateway: "10.0.10.1"
branch: "main"
env_vars:
APP_ENV: "prod"
SECRET_PLACEHOLDER: "change-me"
punimTagBE:
description: "punimTag backend-only project (edit repo_url, IPs, secrets)."
repo_url: "git@github.com:example/punimTagBE.git"
repo_dest: "/srv/app" repo_dest: "/srv/app"
components: components:
backend: true backend: true
frontend: false frontend: true
guest_defaults: guest_defaults:
guest_type: "{{ proxmox_guest_type }}" guest_type: "{{ proxmox_guest_type }}"
cores: 2 cores: 2
@ -268,34 +221,58 @@ app_projects:
backend_install_cmd: "{{ app_backend_install_cmd }}" backend_install_cmd: "{{ app_backend_install_cmd }}"
backend_migrate_cmd: "{{ app_backend_migrate_cmd }}" backend_migrate_cmd: "{{ app_backend_migrate_cmd }}"
backend_start_cmd: "{{ app_backend_start_cmd }}" backend_start_cmd: "{{ app_backend_start_cmd }}"
frontend_install_cmd: "{{ app_frontend_install_cmd }}"
frontend_build_cmd: "{{ app_frontend_build_cmd }}"
frontend_start_cmd: "{{ app_frontend_start_cmd }}"
envs: envs:
dev: dev:
name: "punimTagBE-dev" name: "punimTag-dev"
vmid: 9201 vmid: 9101
ip: "10.0.10.131/24" ip: "10.0.10.121/24"
gateway: "10.0.10.1" gateway: "10.0.10.1"
branch: "dev" branch: "dev"
env_vars: env_vars:
APP_ENV: "dev" APP_ENV: "dev"
SECRET_PLACEHOLDER: "change-me" NODE_ENV: "production"
DATABASE_HOST: "10.0.10.181"
DATABASE_PORT: "5432"
DATABASE_URL: "{{ vault_punimtag_database_url_dev | default('postgresql://punimtag_dev_user:CHANGE_ME@10.0.10.181:5432/punimtag_dev') }}"
BACKEND_PORT: "{{ app_backend_port }}"
FRONTEND_PORT: "{{ app_frontend_port }}"
BACKEND_BASE_URL: "http://10.0.10.121:{{ app_backend_port }}"
FRONTEND_BASE_URL: "http://10.0.10.121:{{ app_frontend_port }}"
qa: qa:
name: "punimTagBE-qa" name: "punimTag-qa"
vmid: 9202 vmid: 9102
ip: "10.0.10.132/24" ip: "10.0.10.122/24"
gateway: "10.0.10.1" gateway: "10.0.10.1"
branch: "qa" branch: "qa"
env_vars: env_vars:
APP_ENV: "qa" APP_ENV: "qa"
SECRET_PLACEHOLDER: "change-me" NODE_ENV: "production"
DATABASE_HOST: "10.0.10.181"
DATABASE_PORT: "5432"
DATABASE_URL: "{{ vault_punimtag_database_url_qa | default('postgresql://punimtag_qa_user:CHANGE_ME@10.0.10.181:5432/punimtag_qa') }}"
BACKEND_PORT: "{{ app_backend_port }}"
FRONTEND_PORT: "{{ app_frontend_port }}"
BACKEND_BASE_URL: "http://10.0.10.122:{{ app_backend_port }}"
FRONTEND_BASE_URL: "http://10.0.10.122:{{ app_frontend_port }}"
prod: prod:
name: "punimTagBE-prod" name: "punimTag-prod"
vmid: 9203 vmid: 9103
ip: "10.0.10.133/24" ip: "10.0.10.123/24"
gateway: "10.0.10.1" gateway: "10.0.10.1"
branch: "main" branch: "main"
env_vars: env_vars:
APP_ENV: "prod" APP_ENV: "prod"
SECRET_PLACEHOLDER: "change-me" NODE_ENV: "production"
DATABASE_HOST: "10.0.10.181"
DATABASE_PORT: "5432"
DATABASE_URL: "{{ vault_punimtag_database_url_prod | default('postgresql://punimtag_prod_user:CHANGE_ME@10.0.10.181:5432/punimtag_prod') }}"
BACKEND_PORT: "{{ app_backend_port }}"
FRONTEND_PORT: "{{ app_frontend_port }}"
BACKEND_BASE_URL: "http://10.0.10.123:{{ app_backend_port }}"
FRONTEND_BASE_URL: "http://10.0.10.123:{{ app_frontend_port }}"
mirrormatch: mirrormatch:
description: "Mirrormatch Prisma/Node backend (dev/qa/prod)." description: "Mirrormatch Prisma/Node backend (dev/qa/prod)."

View File

@ -70,4 +70,18 @@ vault_mirrormatch_smtp_user: "smtp-user"
vault_mirrormatch_smtp_password: "CHANGE_ME" vault_mirrormatch_smtp_password: "CHANGE_ME"
vault_mirrormatch_smtp_from: "MirrorMatch <noreply@mirrormatch.com>" vault_mirrormatch_smtp_from: "MirrorMatch <noreply@mirrormatch.com>"
# -----------------------------------------------------------------------------
# punimTag (monorepo) secrets
# -----------------------------------------------------------------------------
# Optional deploy key for private repo access
vault_punimtag_git_ssh_key: |
-----BEGIN OPENSSH PRIVATE KEY-----
CHANGE_ME
-----END OPENSSH PRIVATE KEY-----
# Per-environment database URLs (use external Postgres at 10.0.10.181:5432)
vault_punimtag_database_url_dev: "postgresql://punimtag_dev_user:CHANGE_ME@10.0.10.181:5432/punimtag_dev"
vault_punimtag_database_url_qa: "postgresql://punimtag_qa_user:CHANGE_ME@10.0.10.181:5432/punimtag_qa"
vault_punimtag_database_url_prod: "postgresql://punimtag_prod_user:CHANGE_ME@10.0.10.181:5432/punimtag_prod"