Release process
From MoodleDocs
Six weeks prior
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Create the next "X.Y+1" (next dev) version in the Tracker (MDL and CONTRIB), so people can move delayed stuff to next major release if needed. | Integration Lead | |
2. | ✓ | Freeze stable development and post in the General developer forum to inform everyone of the freeze. (example) | Development Manager |
4 weeks prior
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Review and complete the release notes and upgrading notes of the upcoming version.
|
Development Manager | |
2. | ✓ | Release normal weeklies but with these changes in the master branch:
|
Integration Lead | |
3. | ✓ | (Optionally) Announce Beta release in forums (ideally once packages are available). | Integration Lead | |
4. | ✓ | Start QA | Community Manager | |
5. | ✓ | Review documentation for all issues with labels "docs_required", "dev_docs_required" and "qa_test_required", removing this label when relevant docs are updated. | Community Manager | |
6. | ✓ | During the QA weeks integration becomes continuous; release STABLE weeklies normally but master release as often as possible (or on demand). | Integration Lead | |
7. | ✓ | At some points produce release candidates (Z = 1, 2, 3..), which are normal builds with:
|
Integration Lead |
1 week prior
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Clone as many filters as needed in the Tracker, modifying them to point to the new, upcoming, branch (keeping same perms, title...). | Integration Lead | |
2. | ✓ | Create new minor version X.Y.1 in the Tracker (MDL and CONTRIB). | Integration Lead | |
3. | ✓ | Clone MDL-39434 and bump all versions, requires and dependencies along all plugins in codebase to current date. | Integration Lead | |
4. | ✓ | Post a "Heads-up" message on the Partners forum and General Developer forum | Development Manager | |
5. | ✓ | Merge fixes from en_fix pack and then integrate them. | AMOS Maintainer | |
6. | ✓ | In https://github.com/moodlehq/moodle-behat-extension project:
|
Integration Lead | |
7. | ✓ | Identify security issues that need to be integrated using the security_held label.
|
Integration Lead | |
8. | ✓ | Collect security issues into a clone of MDL-39530 to prepare for release of Security Advisories.
|
Development Manager |
Day of release
Packaging
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Make sure there are no real blockers introduced in the last weekly (install / upgrade ...) | Integration Lead | |
2. | ✓ | Verify all unit tests, QA tests and integration tests have passed. | Integration Lead | |
3. | ✓ | Run the mdlrelease process, with the special steps for a Major release.
|
Integration Lead | |
4. | ✓ | Wait for the automated moodle-package to finish building for all versions. Verify the process has ended successfuly (email). | Integration Lead | |
5. | ✓ | In the download server:
|
Integration Lead | |
6. | ✓ | In the Tracker:
|
Integration Lead | |
7. | ✓ | Add/update the release date, build number and link on the Releases page. | Integration Lead | |
8. | ✓ | Post a "git repos updated & tagged" message on the Partner forum | Integration Lead |
Release
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | The execution of "moodle-package-extract-and-postprocess X" script may be needed if the releases *are not going to be published on Monday* but another weekday (X is the weekday, (1-7) starting in Monday). | Integration Lead | |
2. | ✓ | Replace the download/index.php page with its updated counterpart. | Integration Lead | |
3. | ✓ | Replace the download/windows/index.php page with its updated counterpart. | Integration Lead | |
4. | ✓ | Notify all registered sys admins, including security notes with CVE identifiers. | Development Manager | |
5. | ✓ | Post about the release on the moodle.org News forum | Lead Developer (AKA Martin) | |
6. | ✓ | AMOS needs new "X.Y+1dev" branch to be created, to have master changes performed there. | AMOS Maintainer | |
7. | ✓ | Clone MDL-39753 and MDL-39754, to be resolved ASAP. | Integration Lead | |
8. | ✓ | Force update of moodle.org/dev/ | Integration Lead | |
9. | ✓ | Update Moodledocs default redirect and add version link to https://docs.moodle.org/overview/ | Integration Lead | |
10. | ✓ |
|
Development Manager |
1 week after
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Publish the X.Y+ packages for download.moodle.org (should be automatic once weeklies are packaged). | Integration Lead | |
2. | ✓ | Create a new release notes page for the next version X.Y.1 (using the release notes template.) | Development Manager | |
3. | ✓ | Add all security advisories to Security news and release notes with links to security advisories | Development Manager | |
4. | ✓ | Send a plain text email to the OSS mailing list: oss-security@lists.openwall.com. An appropriate message when sending the issues is...
...followed by the security notes. |
Development Manager |
1 month after
# | Major | Minor | Task | Responsibility |
---|---|---|---|---|
1. | ✓ | Publish the X.(Y+1)dev packages for download.moodle.org | Integration Lead |