Redesign and implement a new CI/CD system to automate and streamline the process from code submission to production deployment, improving efficiency, reliability, and scalability.
New CI/CD Design Phases:
Automated Code Analysis:
Tools: Sonar Cloud, CodeQL
Purpose: Analyze code quality and security upon new PR submissions.
Continuous Integration (CI) Pipeline:
API CI Pipeline:
Linting, Unit Tests, Integration Tests, Build Package
Dashboard CI Pipeline:
Lint, Build, Interaction testing (storybook)
Continuous Deployment for PR
Steps:
Deploy API containers with Coolify
Deploy dashboard to Vercel
3.A. Publishing and Storybook Integration (main-branch):
Steps: Publish Storybook and run integration tests
Purpose: Ensure UI components work as expected.
End-to-End (E2E) Testing
Steps:
Execute E2E tests
Followed by manual testing
Merge Readiness and Deployment Cleanup:
Steps: Automate merge checks; tear down deployments post-merge
Purpose: Ensure only passing PRs are merged and clean up resources.
Specifcations
Deployment phase and storybook phase must be continued by manual approval of maintainers
Description
Objective:
Redesign and implement a new CI/CD system to automate and streamline the process from code submission to production deployment, improving efficiency, reliability, and scalability.
New CI/CD Design Phases:
Automated Code Analysis:
Continuous Integration (CI) Pipeline:
Continuous Deployment for PR
End-to-End (E2E) Testing
Merge Readiness and Deployment Cleanup:
Specifcations
Tasks