/home/techb158/cosmic.abdallabala.com/docs
NameSizeModeActions
00-design-study.md36780666editdlrm
01-uml-class-diagram.puml118690666editdlrm
02-use-case-diagram.puml37630666editdlrm
03-sequence-diagrams.puml97320666editdlrm
04-database-entity-model.mmd70510666editdlrm
05-database-schema.sql133720666editdlrm
06-diagram-preview.html50210666editdlrm
07-design-checklist.md32560666editdlrm
08-step-2-storage-layer.md53250666editdlrm
09-step-3-risk-crud-ui.md33800666editdlrm
10-step-4-mitigation-workflow.md39960666editdlrm
11-step-5-deployment-gate-workflow.md22920666editdlrm
12-step-6-multi-pm-integration.md37700666editdlrm
13-step-6-1-microsoft-planner-integration.md23350666editdlrm
14-step-7-reporting-export.md41580666editdlrm
15-step-7-1-oauth-live-connectors.md45450666editdlrm
16-step-8-user-roles-access-control.md32970666editdlrm
17-step-9-production-deployment-security.md42280666editdlrm
18-step-10-final-academic-submission.md31990666editdlrm
19-final-report-draft.md68140666editdlrm
20-instructor-submission-checklist.md36390666editdlrm
21-demo-script.md39480666editdlrm
22-traceability-matrix.md48470666editdlrm
23-testing-evidence.md29610666editdlrm
24-evaluation-rubric-mapping.md29100666editdlrm
25-final-deployment-runbook.md32140666editdlrm
26-known-limitations-and-future-work.md26320666editdlrm
27-final-qa-checklist.md28930666editdlrm
28-demo-rehearsal-script.md36180666editdlrm
29-submission-freeze-report.md27690666editdlrm
30-final-known-issues.md18760666editdlrm
dashboard-spec.md36910666editdlrm
Edit: /home/techb158/cosmic.abdallabala.com/docs/25-final-deployment-runbook.md (3214B)
# Final Deployment Runbook This runbook explains how to install, run, test, and package the COSMIC AI-Risk Dashboard. ## 1. Prerequisites Install: 1. Node.js 18 or later. 2. npm. 3. Optional: Docker and Docker Compose. 4. Optional for production: Nginx and systemd. ## 2. Local setup ```bash unzip cosmic-ai-risk-dashboard-step-10-final-submission.zip cd cosmic-ai-risk-dashboard npm install npm test npm start ``` Open: ```text http://localhost:8090 ``` ## 3. Environment configuration Copy: ```bash cp .env.example .env ``` Recommended local values: ```env NODE_ENV=development PORT=8090 COSMIC_LIVE_PM_ENABLED=false COSMIC_TOKEN_ENCRYPTION_KEY=replace-with-local-dev-secret ``` ## 4. Production configuration check Before production deployment, run: ```bash npm run check:config ``` The check should warn about missing production secrets, CORS settings, live connector flags, and security settings. ## 5. Run in production mode ```bash npm run start:prod ``` ## 6. Docker deployment ```bash docker compose up --build -d ``` Check: ```bash curl http://localhost:8090/api/health curl http://localhost:8090/api/ready ``` ## 7. Nginx reverse proxy Use: ```text deploy/nginx.conf ``` The production target should terminate HTTPS at Nginx and proxy requests to the Node.js application. ## 8. systemd service Use: ```text deploy/cosmic-ai-risk-dashboard.service ``` Suggested commands: ```bash sudo cp deploy/cosmic-ai-risk-dashboard.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable cosmic-ai-risk-dashboard sudo systemctl start cosmic-ai-risk-dashboard ``` ## 9. Backup Create a backup: ```bash npm run backup ``` List backups through the API: ```bash curl http://localhost:8090/api/operations/backups ``` ## 10. Health checks | Endpoint | Purpose | |---|---| | `/api/health` | Basic service health | | `/api/ready` | Runtime readiness | | `/api/operations/security` | Safe security status | | `/api/operations/backups` | Backup listing | ## 11. OAuth and live PM connectors Live calls are disabled by default. To enable: ```env COSMIC_LIVE_PM_ENABLED=true COSMIC_TOKEN_ENCRYPTION_KEY=replace-with-long-random-secret ``` Then configure provider variables for Trello, Jira, Asana, and Microsoft Planner in `.env`. Do not commit `.env` to source control. ## 12. Submission packaging To create a clean package: ```bash cd .. zip -r cosmic-ai-risk-dashboard-step-10-final-submission.zip cosmic-ai-risk-dashboard ``` ## 13. Instructor demo sequence 1. Run `npm test`. 2. Run `npm start`. 3. Open the dashboard. 4. Show design files. 5. Demonstrate risk CRUD. 6. Demonstrate mitigation workflow. 7. Demonstrate deployment gate. 8. Demonstrate PM integrations. 9. Demonstrate reports. 10. Demonstrate access control. 11. Show production files. ## 14. Recovery If the JSON database is damaged, restore a backup from the backup directory or replace `data/database.json` with a known valid copy. ## 15. Production limitation For a real production system, replace JSON storage with PostgreSQL or another managed database. JSON storage is acceptable for the academic prototype stage but not recommended for concurrent multi-user production use.