$customHeader
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

This page exists to communicate opportune time windows for merging to different repositories.

Context

Groups of individuals with merge rights to public repositories in the openedx GitHub organization include:

2U, unlike most other community deployers, ships code directly off of the master branch of Open edX service repositories. We aim not to merge during time periods when 2U employees would find it difficult to respond to breaking changes, whether they be intentional or accidental.

Observation and monitoring of changes deployed to edX.org can currently only be done by 2U employees and contractors. Despite this, we want to empower community core contributors to merge changes without relying on a 2U employee to "push the button" for them. So, this page exists to communicate opportune time windows for merging to different repositories.

Core contributors: Please consider these guidelines in conjunction with those listed in CC reviews and ownership.

2U employees/contractors: Please consider these guidelines in conjunction with the internal IDA release process and LMS/Studio release process.

Guidelines for edx-platform

When is edx-platform deployed?

edx-platform is continuously deployed to edX production. Upon merging a pull request, it is generally released to the Staging environment (courses.stage.edx.org) within one hour and the Production environments (courses.edx.org and edge.edx.org) within two hours.

What is the ideal merge window?

For non-2U employees, this is generally M-F 7:30am and 3:30pm ET.

For 2U employees: this is generally M-F, within your team’s preferred working hours.

What should I do before merging?

Core contributors should inform the relevant #cc-$PLATFORMAREA channels in the Open edX Slack with a lead time of ~20 minutes.

2U employees/contractors may post in their internal Slack #warroom to raise awareness of their change if they believe it has an above-average risk of failure in production.

Are there other times merging is discouraged?

Weekends. Saturdays and Sundays.

Christmas and New Year’s Day (12/25 and 1/1). In previous years, we’ve also requested a broader merge freeze between 12/22 and 1/4. We may do this again. Reach out to your champion if you want to merge within this time period.

Martin Luther King Jr. Day. The third Monday of January.

US President’s Day. The third Monday of February.

MA Patriot’s Day. The third Monday of April.

US Memorial Day. The last Monday of May.

Juneteenth. June 19th, or the weekday nearest to it.

US Independence Day. July 4th, or the weekday nearest to it.

US Labor Day. The first Monday in September.

Indigenous Peoples’ Day. The second Monday in October.

Veteran’s/Armistice Day. November 11th, or the weekday nearest to it.

Thanksgiving + day after. The fourth Thursday and Friday in November.

Additional special dates may come up. If you plan on merging to openedx/edx-platform please watch this page.

Guidelines for other repositories

When are other repositories deployed?

Frontend app repositories (ie “MFEs” / “micro-frontends”) are generally deployed to edX production manually by the owning team at 2U.

Backend service repositories (ie “IDAs” / “independently deployable apps”) are generally deployed to edX production manually by the owning team at 2U.

Python and JavaScript packages are “deployed” when they are upgraded in their respective service repositories. Because different services upgrade dependencies at different rates, the lead time from merging to production here can vary. To minimize this lead time, we recommend to quickly follow each package merge with (1) a package release and then (2) an upgrade of that package in at least one service.

Dev tools such as Devstack are not “deployed” per se, but merged changes are immediately apparent to developers once they git pull .

What is the ideal merge window?

Generally speaking, you can merge to these repositories whenever you want to, presuming that the PR meets all review requirements.

What should I do before merging?

Non 2U-employees should inform the relevant #cc-$PLATFORMAREA channels in the Open edX Slack with a lead time of ~20 minutes.

2U employees/contractors should inform the owning team. Depending on the repository, you may need to deploy.

Are there other times merging is discouraged?

At the moment, no.

  • No labels