ol-infrastructure
ol-infrastructure copied to clipboard
Create MITx Online CI Environment
User Story
- As a platform engineer I would like to be able to experiment on infrastructure for the MITx Online service without disrupting testing that happens in RC/QA
Description/Context
We are limited from deploying a CI stage of the MITx Online application in Heroku because of changes that they made to their pipelines construct. Because we don't have a CI instance of the ecommerce/dashboard application we also can't have an instance of the Open edX service due to the coupling at the auth layer.
Plan/Design
To address these shortcomings, as well as make progress toward our eventual goal of deprecating Heroku we would like to deploy the CI instance of MITx Online on a different PaaS. Possible services that we have shortlisted include:
- Render - https://render.com/
- Fly.io - https://fly.io/
The list of options may have changed since our last exploration, so some additional research is merited. Previous documentation about the decision process is addressed in the RFC located here
Acceptance Criteria
- [ ] A CI stage of MITx Online (both application and Open edX) are deployed and integrated together
- [ ] The dashboard/ecommerce application is automatically built and deployed for each change to the
main
branch of mitodl/mitxonline - [ ] The dashboard/ecommerce application is running on a PaaS other than Heroku and which we feel confident migrating to
- [ ] A decision document is written that details the selection process and reasoning for the PaaS service being used