-
Notifications
You must be signed in to change notification settings - Fork 53
Cloud Environments
SimpleReport is spread across multiple environments for the purposes of development, testing, demonstration, and production purposes. Some are deployed to automatically as part of our pipeline when code is merged to main
, while others require manual updates and are considered "volatile".
Name | Frontend | API | Deployment | Intended Use |
---|---|---|---|---|
prod | /app/static/commit.txt | /api/actuator/info | Dispatched on success of stg deploy |
Used by end users |
demo | /app/static/commit.txt | /api/actuator/info | Worflow on success of stg deploy |
Used internally to demo the application to potential end users |
training | /app/static/commit.txt | /api/actuator/info | Dispatched on success of stg deploy |
Used externally by potential users to get a better understanding of the product |
stg | /app/static/commit.txt | /api/actuator/info | Push to main
|
To validate the application work in the cloud and works with prod like data |
dev | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
dev2 | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
dev3 | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
dev4 | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
dev5 | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
dev6 | /app/static/commit.txt | /api/actuator/info | Action | Development testing/PR validation before merging to main
|
test | /app/static/commit.txt | /api/actuator/info | Push to main
|
Automated testing agsinst main (e2e/load) |
pentest | /app/static/commit.txt | /api/actuator/info | Action | Penetration testing (no alerting enabled) |
The url for each environment follows the pattern {env}.simplereport.gov/app
.
Name:
dev
dev2
dev3
dev4
dev5
dev6
Update Strategy: These environments are updated on-demand with GitHub Actions. They should not be relied upon to be in sync with main
.
Intended Use: Developers should use these environments to test enhancements and bug fixes and to verify deployment behavior in a cloud environment. This environment's data is volatile and should not be relied upon for feature testing or demonstration.
Name: test
Update Strategy: This environment is automatically updated on a push to main
.
Intended Use: Used for automated end-to-end and load testing. This environment's data is volatile and should not be relied upon for feature testing or demonstration.
Name: pentest
Update Strategy: This environment is updated on-demand with GitHub Actions. It should not be relied upon to be in sync with main
.
Intended Use: Used for security and penetration testing, including by automated toolsets. Alerting is disabled in this environment to facilitate testing. This environment's data is volatile and should not be relied upon for feature testing or demonstration.
Name: training
Update Strategy: This environment is automatically updated on a push to main
, contingent on a successful automated deployment to stg
.
Intended Use: Used externally by potential and onboarding users to better understand the product. This environment's data is ephemeral; the database is wiped and re-seeded every 24 hours.
Name: demo
Update Strategy: This environment is automatically updated on a push to main
, contingent on a successful automated deployment to stg
.
Intended Use: Used externally by product managers, support staff, and other personnel to demonstrate the production version of the application to potential end users.
Name: stg
Update Strategy: This environment is automatically updated on a push to main
.
Intended Use
Used as a validation gate for code, deployment, and infrastructure changes on a prod-like environment before new code from main
is rolled to active demonstration/production environments. A failure to deploy to stg
blocks deployments downstream to demo
, training
, and prod
.
Name: prod
Update Strategy: This environment is automatically updated on a push to main
, contingent on a successful automated deployment to stg
.
Intended Use: Used for live data collection and processing by end users. This is the SimpleReport.
- Getting Started
- [Setup] Docker and docker compose development
- [Setup] IntelliJ run configurations
- [Setup] Running DB outside of Docker (optional)
- [Setup] Running nginx locally (optional)
- [Setup] Running outside of docker
- Accessing and testing weird parts of the app on local dev
- Accessing patient experience in local dev
- API Testing with Insomnia
- Cypress
- How to run e2e locally for development
- E2E tests
- Database maintenance
- MailHog
- Running tests
- SendGrid
- Setting up okta
- Sonar
- Storybook and Chromatic
- Twilio
- User roles
- Wiremock
- CSV Uploader
- Log local DB queries
- Code review and PR conventions
- SimpleReport Style Guide
- How to Review and Test Pull Requests for Dependabot
- How to Review and Test Pull Requests with Terraform Changes
- SimpleReport Deployment Process
- Adding a Developer
- Removing a developer
- Non-deterministic test tracker
- Alert Response - When You Know What is Wrong
- What to Do When You Have No Idea What is Wrong
- Main Branch Status
- Maintenance Mode
- Swapping Slots
- Monitoring
- Container Debugging
- Debugging the ReportStream Uploader
- Renew Azure Service Principal Credentials
- Releasing Changelog Locks
- Muting Alerts
- Architectural Decision Records
- Backend Stack Overview
- Frontend Overview
- Cloud Architecture
- Cloud Environments
- Database ERD
- External IDs
- GraphQL Flow
- Hibernate Lazy fetching and nested models
- Identity Verification (Experian)
- Spring Profile Management
- SR Result bulk uploader device validation logic
- Test Metadata and how we store it
- TestOrder vs TestEvent
- ReportStream Integration
- Feature Flag Setup
- FHIR Resources
- FHIR Conversions
- Okta E2E Integration
- Deploy Application Action
- Slack notifications for support escalations
- Creating a New Environment Within a Resource Group
- How to Add and Use Environment Variables in Azure
- Web Application Firewall (WAF) Troubleshooting and Maintenance
- How to Review and Test Pull Requests with Terraform Changes