-
Notifications
You must be signed in to change notification settings - Fork 49
Coinstack Fallback Process
In the case of an upstream provider outage, we want an easy way to fall back to our own self hosted infrastructure to prevent user downtime. Conversely, we also want an easy way to cut back over to the upstream provider once the outage has been resolved. To manage these flows, we are going to leverage CircleCI. This process assumes you have access to approve and/or rerun deployment workflows for Unchained.
-
You can find the workflows under the
unchainedproject on themainbranch in CircleCI:

-
The deployment pipeline will consist of two worflows:

- The standard
deploy-mainworkflow to deploy new changes and optionally used to cut back over to the upstream provider in the case we had fallen back to our self hosted infrastructure. - The new
deploy-fallbackworkflow used to fall back to our self hosted infrastructure in the case of an upstream provider outage
- The standard
-
All workflow interaction will pertain to the most recent deployment which will be listed at the top by default
-
Select the
deploy-fallbackworkflow:

-
Approve the necessary coinstacks for fallback:

-
Confirm the approval:

-
Validate successful deployment to fallback infrastructure:

-
If the coinstack requiring fallback has already been run and the workflow is still in the "Needs Approval" stage, the workflow must be cancelled first before you are able to trigger a rerun:

-
Rerun the
deploy-fallbackworkflow:

-
Continue following the Fallback Process above
-
Rerun the
deploy-mainworkflow:

-
Select the
deploy-mainworkflow now requiring approval:

-
Approve all coinstacks - this will ensure everything is cut back over to the upstream provider and also ensure the
deploy-mainworkflow is left in a "Success" state:

-
Validate successful deployment of the
deploy-mainworkflow:
