-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* docs: more documentation * infra: different resources depending on environment + docs * docs: more documentation about infrascrutcture and TODOs
- Loading branch information
Showing
10 changed files
with
168 additions
and
158 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
# Project TODOs and Production Readiness Checklist | ||
|
||
## Infrastructure Improvements | ||
|
||
### Cloud Run Configuration | ||
- [ ] Fix default image deployment issue | ||
- Current: Terraform deploys hello-world image during updates | ||
- Need: Use latest tag or specified image variable | ||
- Fallback: Use hello-world only if GCR image doesn't exist | ||
|
||
### Performance Optimization | ||
- [ ] Implement aggressive scaling strategy | ||
- [ ] Set lower CPU utilization threshold (around 50%) for production | ||
- [ ] Goal: Maintain one spare instance to prevent startup delays | ||
- Note: Only apply to production, not staging/development | ||
|
||
- [ ] Optimize instance resources | ||
- Current: 1 vCPU, 1GB RAM per instance | ||
- Proposed: 4 vCPU, 4GB RAM per instance | ||
- Benefits: | ||
- Reduced need for frequent scaling | ||
- Better request latency handling | ||
- More efficient Unicorn worker distribution | ||
|
||
### Server Optimization | ||
- [ ] Investigate Unicorn optimization opportunities | ||
- Current: Basic configuration | ||
- Goal: Improve load distribution and reduce latency | ||
- Areas to explore: | ||
- Worker process configuration | ||
- Connection pooling | ||
- Request timeout settings | ||
|
||
## Cost-Performance Balance | ||
- [ ] Evaluate resource allocation strategy | ||
- Consider trade-off: Fewer, more powerful pods vs many smaller pods | ||
- Focus on optimizing Unicorn configuration for better resource utilization | ||
- Balance between scaling speed and resource efficiency | ||
|
||
## Notes for Future Development | ||
- Service not yet in production with departments | ||
- All scaling and performance configurations should be thoroughly tested before production deployment | ||
- Monitor startup times and request latency during peak loads | ||
|
||
|
||
## CI/CD and Testing Pipeline | ||
- [ ] Migrate deployment scripts to GitHub Actions | ||
- [ ] Set up deployment workflows for each environment | ||
- [ ] Implement proper environment variable handling | ||
- [ ] Add deployment approval gates for production | ||
|
||
- [ ] Implement automated testing in CI | ||
- [ ] Run integration tests in GitHub Actions | ||
- [ ] Configure Playwright end-to-end tests | ||
- [ ] Set up test reporting and notifications | ||
|
||
## Security and Monitoring | ||
- [ ] Enhance Cloud Armor configuration | ||
- [ ] Test and monitor WAF rules | ||
- [ ] Verify alert configurations | ||
- [ ] Document incident response procedures | ||
- [ ] Set up alert notifications for security events |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,18 @@ | ||
environment = "staging" | ||
project_id = "sde-consent-api" | ||
region = "europe-west2" | ||
domain_name = "gds-single-consent-staging.app" | ||
domain_name = "staging.gds-single-consent.app" | ||
db_name = "consent-api" | ||
db_tier = "db-custom-4-8192" # 4 vCPU, 8GB RAM for staging | ||
db_tier = "db-custom-2-4096" # 2 vCPU, 4GB RAM for staging | ||
db_version = "POSTGRES_14" | ||
db_deletion_protected = true | ||
|
||
# Cloud Run configuration | ||
min_instances = 2 | ||
max_instances = 8 | ||
container_concurrency = 80 | ||
# Cloud Run configuration for staging | ||
min_instances = 1 # Minimum instances for staging | ||
max_instances = 2 # Maximum 2 instances for staging | ||
container_cpu = "1000m" # 1 CPU core per container | ||
container_memory = "512Mi" # 512MB RAM per container | ||
container_concurrency = 80 # Same concurrency settings | ||
|
||
# Load testing configuration | ||
load_test_ip = "35.246.19.18" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.