Moodle Mobile release process
4-7 days before (when possible)
|1.||Create an issue in the tracker for the release, like: MOBILE-1248||Integration Lead|
|2.||Update the local_moodlemobileapp plugin with new strings in moodle.org/plugins (only for Moodle version 2.6). Use the moodlemobile-scripts/json-to-string2.php to convert the build lang file to a valid string file.||Integration Lead|
|3.||Ask someone from sites or community team to review the new english strings.||Community or Sites team|
|4.||Announce in the moodletranslation forums the new strings available: https://lang.moodle.org/mod/forum/view.php?id=5. This will allow translators to add the new strings during the days prior to the release.||Integration Lead|
|5.||Add the release notes in the release issue created (search for the release_notes tag). Ask someone from the documentation team or Martin to review the release notes.||Integration Lead|
|6.||Contact the marketing announcing the new release and highlights.||Integration Lead|
7 days before (testing days)
|1.||Create a new local branch (based on moodlehq/moodlemobile2:integration) with the release tracker issue number for integrating all the version and string changes.||Integration Lead|
|2.||Run gulp and then execute detect-string-core-changes.php and auto-translate strings with the script auto-translate2.php, commiting the results.||Integration Lead|
|3.||Run gulp and update language strings from AMOS using the fetch-langpacks2.sh script, commit the result.||Integration Lead|
|4.|| Bump version numbers in config.xml, www/config.json, package.json, desktop/assets/windows/AppXManifest.xml and in www/errorreport.js (is hardcoded there).
Push all this changes using the release issue number and integrate them into the integration branch.
|5.|| Execute the prepare-release-integration.sh script to update the moodlehq/moodlemobile-phonegap build:integration branch with a built version of the app ready for PhonegapBuild.
Push all this changes to moodlehq/moodlemobile-phonegapbuild:integration.
|6.||Bump version numbers in moodlehq/moodlemobile-phonegapbuild:integration/config.xml and push the changes.||Integration Lead|
|7.|| Create a build in Phonegap Build using the Development certificate for iOs and the production keystore for Android pointing to moodlehq/moodlemobile-phonegap build:integration
And Start testing
|All the team|
1 day before
|1.|| Backport to local_mobile (all branches) all the new required Web Services by new features.
Check if existing Web Services should be added to the local_mobile service (because they were added to the Mobile app service).
Once all the Web Services are backported and tested, publish a new version in the plugins database (via TAGS) so admin can updates their sites.
The release day
|1.||Integrate the integration branch onto the master one. Execute the prepare-release-version.sh script.||Integration Lead|
|2.||Bump the versions in the config.xml file and then PUSH the master branch of the moodlemobile-phonegapbuild repository.||Integration Lead|
|3.||Build the app for Android and iOs using the Distribution certificate. Remember to do two different builds (pointing to the ios and android branches).||Integration Lead|
|4.||Send the applications to the stores for review. Update the download.php for desktop apps (including new version number).||Integration Lead|
|5.||Update release notes Moodle_Mobile_Release_Notes and Moodle_Desktop_release_notes with the notes reviewed in the issue.||Integration Lead|
|6.||Create a TAG/Release in github (moodlehq/moodlemobile2) with the version number.||Integration Lead|
|7.||Update the local mobile plugin short description to indicate which is the latest Moodle Mobile version supported and date.||Integration Lead|
|8.||Mark the issue and the version as released in the tracker.||Integration Lead|
|9.||Social media announcements (Forum and Twitter).||All the team & Marketing team|
|10.||Post in moodle.org/news.||Team Lead|
|11.||Review the users and developers documentation (check that everything is in order). Review the docs_required and dev_docs_required_tags. Review the Mobile features wiki documentation.||All the team|
|12.||Provide the APK file for including in Moodle downloads: Moodle mobile.||Integration Lead|