@@ -8,12 +8,42 @@ This project adheres to [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
88
99## [ Unreleased]
1010
11- ### Planned — Next Up (Phase 3 Lab 06 Sprint)
12- - Phase 3 Lab 06 (Production Deployment ) for: FreePBX, SuiteCRM, Odoo, OpenKM
11+ ### Planned — Next Up (Phase 4 Lab 01 Sprint)
12+ - Phase 4 Lab 01 (Standalone ) for: Taiga, Snipe-IT, GLPI, Elasticsearch, Zabbix, Graylog
1313- ` it-stack-installer ` operational scripts (` clone-all-repos.ps1 ` , ` update-all-repos.ps1 ` , ` install-tools.ps1 ` )
1414
1515---
1616
17+ ## [ 1.14.0] — 2026-03-01
18+
19+ ### Added — Phase 3 Lab 06: Production Deployment (all 4 Phase 3 modules) — Sprint 18 complete 🎉 Phase 3 COMPLETE!
20+ Lab progress: 80/120 → 84/120 (66.7% → 70.0%). ** Phase 3 (Back Office) is now fully complete.** Production-grade stacks with ` restart: unless-stopped ` , resource limits (` deploy.resources.limits ` ), production credentials, dependency health checks, and operational validation tests.
21+
22+ | Module | Web Port | KC Port | LDAP Port | MH Port | Key Production Feature |
23+ | --------| ----------| ---------| -----------| ---------| ------------------------|
24+ | FreePBX (10) | 8380 | 8480 | 3898 | 8680 | AMI :5042, SIP :5167/udp, mysqldump backup |
25+ | SuiteCRM (12) | 8382 | 8481 | 3899 | 8681 | Redis sessions, cron container, mysqldump backup |
26+ | Odoo (13) | 8390 | 8490 | 3900 | 8690 | workers=2, longpolling :8391, pg_dump backup |
27+ | OpenKM (14) | 8393 | 8491 | 3901 | 8693 | ES :9204, index test, mysqldump backup |
28+
29+ Container naming: ` {module}-p06-{service} ` (p06 = production lab 06).
30+
31+ #### Test Coverage Added
32+ - Compose file syntax validation (` config -q ` )
33+ - Memory and CPU limits via ` docker inspect .HostConfig.Memory / .NanoCpus `
34+ - ` restart: unless-stopped ` policy assertion
35+ - ` IT_STACK_ENV=production ` and ` IT_STACK_LAB=06 ` env var checks
36+ - Database backup: ` mysqldump ` (MariaDB/MySQL) and ` pg_dump ` (PostgreSQL) to ` /dev/null `
37+ - Keycloak admin token + realm list via admin API
38+ - Service restart resilience: ` docker restart {db} ` → re-check health
39+ - Redis session read/write (SuiteCRM)
40+ - Odoo workers mode in command line (` docker inspect .Config.Cmd ` )
41+ - Elasticsearch index create/document/delete cycle (OpenKM)
42+ - OpenKM REST API ` /folder/getChildren ` (authenticated)
43+ - CI ` lab-06-smoke ` job added to all 4 module CI workflows
44+
45+ ---
46+
1747## [ 1.13.0] — 2026-03-01
1848
1949### Added — Phase 3 Lab 05: Advanced Integration (all 4 Phase 3 modules) — Sprint 17 complete
0 commit comments