Developer Area/Release Instructions/Release day
From Mahara Wiki
< Developer Area | Release Instructions
📋 Final checks before starting release day
🚨 Make sure that any security reviews/patches are merged before proceeding 🚨
🔒 Security team (if you don't have +2 review status, you won't be able to see these patches)
- ✅ Merge the 'Draft' security patches.
- ✅ Update the related Launchpad bugs to 'Public security'.
🛠 Release manager
- ✅ CVE #'s - Security issues have an assigned CVE number?
- ✅ Backporting - security fixes backported to all supported versions that need them?
- ✅ Bugs fixed - all bugs going into his release have their fixes merged for all supported versions?
- ✅ Comms - to Mahara partners + drafted the forum posts?
👷🏻 For all devs
- ✅ What minor point release are you going to do?
- ✅
git pull mahara-scripts
- ✅ Valid GPG - do you have a valid GPG key added to your Launchpad account? See https://launchpad.net/~username/+editpgpkeys
- ✅
lptools
- do you have the lp-upload-project installed for uploading the release tars?apt-get install lptools
📓 Prepare the change log and release notes
Change log template:
Note: You can copy the list of bugs from the milestone page and re-format the list.
Bug XXXXXXX: <Title of bug>
Bug XXXXXXX: <Title of bug>
Bug XXXXXXX: <Title of bug>
...
Release notes template:
Note: Replace the <XX.XX.X>
with the milestone/version you are working on.
- - - - - - - ignore this line - - - - - - - -
Mahara <XX.XX.X>
Release Notes
This is a stable release of Mahara <XX.XX>
. Stable release are fit for general use.
If you find a bug, please report it to the tracker:
https://bugs.launchpad.net/mahara/+filebug
This release includes an upgrade path from 1.1.0.
If you wish to upgrade, we encourage you to make a copy of your website and test
the upgrade on it first, to minimise the effect of any potential unforeseen problems.
- - - - - - - ignore this line - - - - - - - -
Initiate the release script
Prepare the change log and release notes to go into Launchpad?
The following uses the script you got in the previous step.
Run the first step: ./release.php X.Y.Z X.Y_DEV (For rc X.Yrc1)
- creating tarballs
- It will also spit out another script (release-X.Y.Z-cleanup.sh) to be run later.
Important Check the terminal output in case there are GPG errors,
Example: Tag new version bump commit as 'X.YRC2_RELEASE' error: gpg failed to sign the data error: unable to sign the tag
So this is what I did to fix it, all commands are on command line:
1) Updated the gpg program to use: git config --global gpg.program gpg2
2) Tested if it was working: echo "test" | gpg2 --clearsign
It wasn't so I had to do: export GPG_TTY=$(tty)
then run again echo "test" | gpg2 --clearsign
After all that when I ran release.php command again it didn't give me the error