Scaffolds the CommunityOS monorepo per the implementation plan: 8 brand-neutral product modules (community_theme_base, community_membership, event_qr_ticketing, community_school, community_classifieds, community_benefits, community_interac, community_portal) plus the tncsc_deployment client layer, each with an App-Store-ready manifest, LGPL-3 license, and empty security/data/demo/tests/views scaffolding. Adds deploy/docker-compose.yml (Odoo 19 CE + Postgres 16), CI workflow that installs all modules with --test-enable, and scripts/check_brand_leak.py + check_manifests.py enforcing the no-client-identity-in-product-code and manifest-completeness rules. Verified locally: all 9 modules install clean on a fresh Odoo 19 database, and the brand-leak check correctly fails when a client term is added to a product module and passes once removed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
44 lines
1021 B
Plaintext
44 lines
1021 B
Plaintext
# Community OS - nginx reverse proxy for Odoo 19
|
|
# Development skeleton. Production hardening (TLS, gzip, static caching,
|
|
# security headers) is completed in Phase 9 (go-live).
|
|
|
|
upstream odoo {
|
|
server 127.0.0.1:8069;
|
|
}
|
|
|
|
upstream odoo-chat {
|
|
server 127.0.0.1:8072;
|
|
}
|
|
|
|
server {
|
|
listen 80;
|
|
server_name _;
|
|
|
|
proxy_read_timeout 720s;
|
|
proxy_connect_timeout 720s;
|
|
proxy_send_timeout 720s;
|
|
|
|
proxy_set_header X-Forwarded-Host $host;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
|
|
location /websocket {
|
|
proxy_pass http://odoo-chat;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
|
|
location / {
|
|
proxy_redirect off;
|
|
proxy_pass http://odoo;
|
|
}
|
|
|
|
location ~* /web/static/ {
|
|
proxy_cache_valid 200 90m;
|
|
proxy_buffering on;
|
|
expires 864000;
|
|
proxy_pass http://odoo;
|
|
}
|
|
}
|