Commita governance, user-wizard, operational-feed e catálogo RBAC; adiciona deploy-desk-full.sh, smoke-desk.sh e regra anti-deploy parcial; documenta credencial VM112 @betinplace. Co-authored-by: Cursor <cursoragent@cursor.com>
198 lines
8.3 KiB
JavaScript
198 lines
8.3 KiB
JavaScript
/** Metadados INFRA CODE — API, VM, código-fonte e pasta Spec por serviço (Spec 033). */
|
|
window.STACK_SERVICE_META = {
|
|
'vm112-onboard-api': {
|
|
specFolder: 'specs/001-onboarding-webhooks/',
|
|
apiPath: 'GET /api/onboarding/health',
|
|
codePaths: ['deploy/vm112-wizard/', 'VM112 onboard API :8090'],
|
|
probeCode: 'api/app/stack_health.py → vm112-onboard-api',
|
|
validation: 'HTTP 200 no health do portal onboard',
|
|
},
|
|
'vm112-onboard-ui': {
|
|
specFolder: 'specs/025-wizard-ui/',
|
|
apiPath: 'GET https://onboard.ligbox.com.br/',
|
|
codePaths: ['deploy/vm112-wizard/frontend/', 'CT114 Traefik router onboard'],
|
|
probeCode: 'api/app/stack_health.py → vm112-onboard-ui',
|
|
validation: 'Wizard público responde 200/301/302/403',
|
|
},
|
|
'vm112-carbonio': {
|
|
specFolder: 'specs/022-carbonio-mail/',
|
|
apiPath: 'GET https://10.10.10.112/',
|
|
codePaths: ['VM112 Carbonio CE', 'deploy/carbonio/'],
|
|
probeCode: 'api/app/stack_health.py → vm112-carbonio',
|
|
validation: 'HTTPS Carbonio (TLS interno, verify=false)',
|
|
},
|
|
'vm112-domain-api': {
|
|
specFolder: 'specs/017-vm112-domain-orchestration/',
|
|
apiPath: 'GET /api/onboarding/health (proxy admin)',
|
|
codePaths: ['deploy/vm112-wizard/', 'api/admin/domains'],
|
|
probeCode: 'api/app/stack_health.py → vm112-domain-api',
|
|
validation: 'API VM112 acessível — domínios via Spec 017',
|
|
},
|
|
'vm114-traefik': {
|
|
specFolder: 'specs/026-traefik-edge/',
|
|
apiPath: 'GET :8080/api/overview',
|
|
codePaths: ['CT114 docker/traefik/', 'dynamic routers YAML'],
|
|
probeCode: 'api/app/stack_health.py → vm114-traefik',
|
|
validation: 'Traefik API responde (200/401/403)',
|
|
},
|
|
'vm114-desk-route': {
|
|
specFolder: 'specs/026-traefik-edge/',
|
|
apiPath: 'GET https://desk.ligbox.com.br/',
|
|
codePaths: ['CT114 router desk.ligbox.com.br', 'VM122 frontend :8091'],
|
|
probeCode: 'api/app/stack_health.py → vm114-desk-route',
|
|
validation: 'Rota WAN Desk via Traefik',
|
|
},
|
|
'vm114-api-route': {
|
|
specFolder: 'specs/027-desk-api-public/',
|
|
apiPath: 'GET https://api.ops.ligbox.com.br/health',
|
|
codePaths: ['CT114 router api.ops', 'VM122 api :8080'],
|
|
probeCode: 'api/app/stack_health.py → vm114-api-route',
|
|
validation: 'API pública Ops responde /health',
|
|
},
|
|
'vm122-desk-api': {
|
|
specFolder: 'specs/003-desk-auth-rbac/',
|
|
apiPath: 'GET /health · /api/v1/*',
|
|
codePaths: ['projects/ops-desk/api/app/', 'docker ligbox-ops-platform_api'],
|
|
probeCode: 'api/app/stack_health.py → vm122-desk-api',
|
|
validation: 'FastAPI local :8080/health',
|
|
},
|
|
'vm122-desk-ui': {
|
|
specFolder: 'specs/040-desk-design-system-v013/',
|
|
apiPath: 'GET http://10.10.10.122:8091/',
|
|
codePaths: ['projects/ops-desk/frontend/', 'assets/ligbox-ds.css', 'assets/user-wizard.js', 'assets/access-control-hub.js'],
|
|
probeCode: 'api/app/stack_health.py → vm122-desk-ui',
|
|
validation: 'Nginx frontend · footer v0.13.0 · Spec 040',
|
|
},
|
|
'vm122-governance-api': {
|
|
specFolder: 'specs/040-desk-design-system-v013/',
|
|
apiPath: 'POST /api/v1/governance/users/wizard · GET /governance/audit',
|
|
codePaths: ['api/app/governance_routes.py', 'api/app/desk_governance_store.py'],
|
|
probeCode: 'DS-API-002 governance_routes',
|
|
validation: 'Wizard create user + audit log · Spec 040',
|
|
},
|
|
'vm122-ops-inbox-api': {
|
|
specFolder: 'specs/041-desk-operational-feed/',
|
|
apiPath: 'GET /api/v1/ops-inbox/stats · GET /events · POST /events/{id}/messages',
|
|
codePaths: ['api/app/ops_inbox_routes.py', 'api/app/ops_inbox_store.py', 'assets/operational-feed.js'],
|
|
probeCode: 'OF-API-002 ops_inbox_routes',
|
|
validation: 'Central Operacional mock · Spec 041',
|
|
},
|
|
'vm122-redis': {
|
|
specFolder: '—',
|
|
apiPath: 'redis://redis:6379/0 PING',
|
|
codePaths: ['docker-compose redis', 'api/app assist_store / cache'],
|
|
probeCode: 'api/app/stack_health.py → _probe_redis',
|
|
validation: 'PING OK no Redis do stack',
|
|
},
|
|
'vm122-webhook-soc': {
|
|
specFolder: 'specs/001-onboarding-webhooks/',
|
|
apiPath: 'GET /api/v1/integrations/health',
|
|
codePaths: ['api/app/integration_health.py', 'api/app/assist_routes.py'],
|
|
probeCode: 'infra_stack_routes.py enrich + integration_health',
|
|
validation: 'Gap webhook VM112 + status integração',
|
|
},
|
|
'vm122-purge-auth': {
|
|
specFolder: 'specs/032-purge-domain-extra-auth/',
|
|
apiPath: 'GET/POST /api/v1/infra/purge-auth-*',
|
|
codePaths: ['api/app/infra_stack_routes.py', 'api/app/purge_auth*'],
|
|
probeCode: 'Módulo local Desk — sem probe HTTP externo',
|
|
validation: 'Códigos purge Spec 032 · super_admin',
|
|
},
|
|
'vm122-email-relay': {
|
|
specFolder: 'docs/postfix-vm122.md',
|
|
apiPath: 'GET /api/v1/infra/email-relay/status · POST /test',
|
|
codePaths: [
|
|
'/etc/postfix/main.cf (VM122 host)',
|
|
'/etc/postfix/transport',
|
|
'api/app/email_relay.py',
|
|
'api/app/mail_notify.py',
|
|
'VM112 mail.ligbox.com.br (Carbonio relay)',
|
|
],
|
|
probeCode: 'api/app/stack_health.py → vm122-email-relay',
|
|
validation: 'Postfix VM122 · relayhost VM112 · ligbox-ops@ ligbox.com.br · convites Desk',
|
|
},
|
|
'vm123-foss': {
|
|
specFolder: 'specs/024-fossbilling-odoo/',
|
|
apiPath: 'GET http://10.10.10.123:8092/',
|
|
codePaths: ['VM123 FOSSBilling container'],
|
|
probeCode: 'api/app/stack_health.py → vm123-foss',
|
|
validation: 'FOSSBilling UI responde',
|
|
},
|
|
'vm123-odoo': {
|
|
specFolder: 'specs/024-fossbilling-odoo/',
|
|
apiPath: 'GET :8069/web/login',
|
|
codePaths: ['VM123 Odoo 16'],
|
|
probeCode: 'api/app/stack_health.py → vm123-odoo',
|
|
validation: 'Odoo login page responde',
|
|
},
|
|
'vm123-openpanel-ui': {
|
|
specFolder: 'specs/028-openpanel-reengineering/',
|
|
apiPath: 'GET https://openpanel.ligbox.com.br/',
|
|
codePaths: ['VM123 OpenPanel CE', 'CT114 router'],
|
|
probeCode: 'api/app/stack_health.py → vm123-openpanel-ui',
|
|
validation: 'OpenPanel WAN via Traefik',
|
|
},
|
|
'vm123-openadmin': {
|
|
specFolder: 'specs/024-fossbilling-odoo/',
|
|
apiPath: 'GET https://admin.openpanel.ligbox.com.br/',
|
|
codePaths: ['VM123 OpenAdmin'],
|
|
probeCode: 'api/app/stack_health.py → vm123-openadmin',
|
|
validation: 'OpenAdmin UI responde',
|
|
},
|
|
'vm123-openpanel-bridge': {
|
|
specFolder: 'specs/028-openpanel-reengineering/',
|
|
apiPath: 'GET :18087/api (Bearer bridge token)',
|
|
codePaths: ['VM123 bridge service', 'api/app/vm123_routes.py'],
|
|
probeCode: 'api/app/stack_health.py → _probe_openpanel_bridge',
|
|
validation: 'Bridge API com OPENPANEL_BRIDGE_TOKEN',
|
|
},
|
|
'vm123-ops-console': {
|
|
specFolder: 'specs/019-ops-console/',
|
|
apiPath: 'GET :8100/health',
|
|
codePaths: ['VM123 ops console service'],
|
|
probeCode: 'api/app/stack_health.py → vm123-ops-console',
|
|
validation: 'Health endpoint Ops Console',
|
|
},
|
|
'vm123-phpmyadmin': {
|
|
specFolder: '—',
|
|
apiPath: 'GET :8888/',
|
|
codePaths: ['VM123 phpMyAdmin stack'],
|
|
probeCode: 'api/app/stack_health.py → vm123-phpmyadmin',
|
|
validation: 'phpMyAdmin HTTP responde',
|
|
},
|
|
'vm123-ollama': {
|
|
specFolder: 'specs/029-agentic-ops/',
|
|
apiPath: 'GET :11434/api/tags',
|
|
codePaths: ['VM123 Ollama', 'api/app/agents*'],
|
|
probeCode: 'api/app/stack_health.py → vm123-ollama',
|
|
validation: 'Ollama API lista modelos',
|
|
},
|
|
'vm130-forgejo': {
|
|
specFolder: 'specs/031-spec-hub-forgejo/',
|
|
apiPath: 'GET :3000/',
|
|
codePaths: ['CT130 Forgejo', '/opt/ligbox-spec-hub repos'],
|
|
probeCode: 'api/app/stack_health.py → vm130-forgejo',
|
|
validation: 'Forgejo Git UI responde',
|
|
},
|
|
'vm130-spec-portal': {
|
|
specFolder: 'specs/031-spec-hub-forgejo/',
|
|
apiPath: 'GET :8080/',
|
|
codePaths: ['CT130 spec portal', 'obsidian-vault/'],
|
|
probeCode: 'api/app/stack_health.py → vm130-spec-portal',
|
|
validation: 'Spec portal LAN responde',
|
|
},
|
|
'vm130-spec-public': {
|
|
specFolder: 'specs/031-spec-hub-forgejo/',
|
|
apiPath: 'GET https://spec.ligbox.com.br/',
|
|
codePaths: ['CT130 + Traefik WAN', 'spec.ligbox.com.br'],
|
|
probeCode: 'api/app/stack_health.py → vm130-spec-public',
|
|
validation: 'Spec Hub público via WAN',
|
|
},
|
|
'integrations-json': {
|
|
specFolder: 'specs/001-onboarding-webhooks/',
|
|
apiPath: 'GET /api/v1/integrations',
|
|
codePaths: ['api/app/integration_health.py', 'webhook registry DB'],
|
|
probeCode: 'renderInfra · integrations snapshot',
|
|
validation: 'Registry onboard + Wazuh activo',
|
|
},
|
|
};
|