Merge Guidelines for Coding Core Contributors
Core contributors: Please consider these guidelines in conjunction with those listed in CC reviews and ownership.
TL;DR
Core Contributors:
Join the channel
#cc-risky-changes
and post about risky upcoming changes.Merge at any time once you’ve met a repository’s review requirements.
Use defensive CI/CD techniques such as feature toggles, where applicable.
Background: Early Deployers
A handful of site operators deploy code very close to the tip of the default branches (master
or main
) of Open edX's backend service and frontend application repositories. This helps them rapidly iterate on features and fixes. It also helps the community by ensuring that the latest Open edX code is battle-tested in a large-scale environments. These are our early deployers. The known early deployers are:
Organization | Open edX Site(s) using early deployment | Points of contact |
---|---|---|
2U | @Jeremy Ristau @Robert Raposa | |
MIT Office of Digital Learning | @Peter Pinch @Tobias Macey |
This means that breaking changes and bugs will impact these site operators much sooner than site operators using the more-stable 6-month community releases. This is a valuable service provided by early deployers, so we encourage CCs to communicate as much information as possible about changes they believe carry risk and use defensive CI/CD techniques as appropriate. This will help early deployers minimize production incidents and stay close to the tip of master.
To reach early deployers in Discuss, you can tag a post with this group: Early deployers of the open edx platform
To let the community know you are an early deployer, you can join this same group.
General requirements
Merges to master must using defensive CI/CD techniques such as feature toggles, where applicable.
Communications
Core Contributors, join these channels:
#cc-risky-changes
If you are working on a change that you realize might be risky to deploy or might have some deployment complexity, it is important to announce/link to it in #cc-risky-changes
as soon as you come to that realization. You can merge changes to any repositories as soon as you have met the repository’s review requirements.
If you are unsure, err on posting an
[inform]
post in#cc-risky-changes
.If you have any questions about when and if to post, simply ask in
#cc-risky-changes
.
If you want even more exposure to your change, you have the option of posting to Discuss and tagging the Early deployers of the open edx platform group.
Merging and Reverts
What can I merge? | You can merge whenever you want to once you have met that repository’s review requirements. |
---|---|
What if something breaks? | If your PR breaks tests on If your PR breaks the community-supported development environment (currently Tutor Main), and the breakage is clearly not due to a bug in the development environment itself, then any core contributor with access may revert it. If your PR causes a problem in an early deployer’s deployment pipeline or production environment, then the early deployer will triage the situation and try to gauge the nature of the breakage:
|