Steps to address common issues. All scripts live in the bin/ops
folder unless otherwise specified.
Ensure that you broadcast your intent to run any of these scripts in #tts-covidtest-situation
In production, there are two configurations running simultaneously.
prod
which has all features enabledprod-nosmarty
which has address validation with SmartyStreets disabled
prod
is the main configuration, but if we start to see failures attributable to SmartyStreets having issues, we should swap the active configuration in use to prod-nosmarty
.
Use these steps to make the site inaccessible, quickly.
- Run
toggle-prod-routes -d prod
- Run
cf-list-apps
to verify that no routes are listed next to any apps - Update
.circleci/config.yml
to include--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod
apps (4 lines to update)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
Note: If any deploys were in progress when bringing down the site, run cf-list-apps
to verify that the deploy has completed and that no apps are now accidentally accessible by any routes. See the Bring Up The Site section for instructions on verifying the deploy. If any real routes (ending in covidtest.usa.gov
) are still present re-run toggle-prod-routes -d prod
. If any default routes (ending in cloud.gov
) have been applied, run unmap-default-routes
- Run
toggle-prod-routes -d prod-nosmarty
- Run
cf-list-apps
to verify that no routes are listed next to any apps - Update
.circleci/config.yml
to include--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod-nosmarty
apps (4 lines to update)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
Note: If any deploys were in progress when bringing down the site, run cf-list-apps
to verify that the deploy has completed and that no apps are now accidentally accessible by any routes. See the Bring Up The Site section for instructions on verifying the deploy. If any real routes (ending in covidtest.usa.gov
) are still present re-run toggle-prod-routes -d prod-nosmarty
. If any default routes (ending in cloud.gov
) have been applied, run unmap-default-routes
- Verify that any recent deploys have completed by running
cf-list-apps
- Example output after deploy started:
- Example output after the main app has completed
- Example output after deploy is fully complete:
- Run
toggle-prod-routes -e prod
- Update
.circleci/config.yml
to remove--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod
apps (4 lines to update)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
- Verify that any recent deploys have completed by running
cf-list-apps
- See normal configuration instructions for screenshots. Deploy absolutely must be fully complete for this case
- Run
toggle-prod-routes -e prod-nosmarty
- Update
.circleci/config.yml
to remove--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod-nosmarty
apps (4 lines to update)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
This section should be used to quickly disable SmartyStreets integration, or to re-enable it after it/we have recovered and traffic is lower.
- Verify that any recent deploys have completed by running
cf-list-apps
- Run
toggle-prod-routes -e prod-nosmarty -d prod
- Request a CloudFront cache invalidation from either the cloud.gov engineer on-call with you or the Slack #cg-support channel. Tag
@cg-operators
in that case. They'll need to invalidate the following routes:
/
/en
/es
/zh
- Update
.circleci/config.yml
to add--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod
apps (4 lines) and remove--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod-nosmarty
apps (4 lines)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
- Verify that any recent deploys have completed by running
cf-list-apps
- Run
toggle-prod-routes -d prod-nosmarty -e prod
- Request a CloudFront cache invalidation from either the cloud.gov engineer on-call with you or the Slack #cg-support channel. Tag
@cg-operators
in that case. They'll need to invalidate the following routes:
/
/en
/es
/zh
- Update
.circleci/config.yml
to add--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod
apps (4 lines) and remove--no-route
on eachEXTRA_DEPLOY_ARGS
for theprod-nosmarty
apps (4 lines)
- This change should be merged to main, but doesn't need to be deployed. It's just there to ensure a future deploy does not undo what the script accomplished
TKTK