Add GitHub Actions CI/CD pipeline
Goal
Automate quality checks and deployment through GitHub Actions.
CI
On pull requests and relevant pushes:
- Install dependencies.
- Run lint.
- Run backend unit tests.
- Run AI-service tests.
- Run frontend tests.
- Run integration tests.
- Run E2E tests where appropriate.
- Build the application.
- Validate required schemas/configuration.
CD
Define deployment workflows for the project's existing environments.
Recommended environments:
- Development
- Staging
- Production
Production deployment should require appropriate protection/approval where applicable.
Requirements
- Cache dependencies where useful.
- Fail fast on critical errors.
- Store test reports/artifacts where useful.
- Do not expose secrets in logs.
- Use GitHub Secrets/environment variables for credentials.
- Pin action versions appropriately.
- Clearly identify CI vs deployment workflows.
Acceptance Criteria
- Pull requests automatically run CI.
- Failed tests block successful CI.
- Lint failures block CI.
- Build is validated.
- Deployment workflow exists for supported environments.
- Secrets are handled securely.
- Workflow documentation is added.
Add GitHub Actions CI/CD pipeline
Goal
Automate quality checks and deployment through GitHub Actions.
CI
On pull requests and relevant pushes:
CD
Define deployment workflows for the project's existing environments.
Recommended environments:
Production deployment should require appropriate protection/approval where applicable.
Requirements
Acceptance Criteria