ReleaseSchedule
Release Schedule for Ubuntu Touch
The LandingTeam is responsible for managing and coordinating Releases of the Ubuntu Phone image on request of the Canonical Product team.
Release preparation requires an archive freeze that usually lasts three/four days until the image promotion has happened.
Requirements
- The Product Team requests an OTA update release every 6 weeks for all officially supported products
- In case another release is required out of the standard timeframe, the Product Team needs to inform the Landing Team at least two weeks before the planned release, also officially announcing it on the mailing list
- The Product Team hands the Landing Team a list of blocking Bugs together with the request for the milestone, this list gets published along with the above email so developers are aware of the urgency of the open issues. This bug list can be modified during the following weeks towards the milestone, the Product team is the gatekeeper for adding/removing bugs.
- One week before the Release preparation period a translation freeze is introduced. After the freeze no landings containing changes or additions to user-visible strings will be allowed until after release.
- During the Release preparation period (see timeline below) a snapshot of the release candidate is made to the snapshot PPA and all re-spins are prepared in the rc channel. The snapshot is updated with cherry-picks from the overlay whenever a regression needs to be fixed.
- During the Release preparation period normal landings are enabled normally, with rc-proposed images containing the daily changes.
Timeline
Tuesday (US TZ) EOD week before image preparation
All user visible strings are now landed in the image, no silos with additional string changes are allowed to be released to the archive.
Feature freeze in effect! No new features are allowed to land in the overlay from this point, besides exceptions approved by the ProductTeam.
Tuesday (US TZ) EOD on the week of the Milestone
Final moment to get remaining blocking bug fixes landed.
Wednesday morning (EU TZ)
The archive freeze gets called out by the LandingTeam. No landings are accepted by the LandingTeam or the QA Team, nothing besides ship blockers and rare ProductTeam approved exceptions are allowed to land.
Once all blocker silos have landed a Milestone candidate image is created.
- The overlay PPA state is copied to the snapshot PPA and an image is built to the ubuntu-touch/rc/* channels.
- Landings to the overlay PPA are allowed but limited by QA resources, as QA engineers prioritize release candidate testing over silos.
Wednesday afternoon (EU TZ)
The QA team starts the regression tests of the candidate image, in case severe regressions are found, the developer of the component gets contacted and a silo with a fix gets prepared.
- Once the fix silo lands into the overlay, it gets cherry-picked into the snapshot PPA and a new candidate image is rebuilt in ubuntu-touch/rc/*.
Friday EOD (US TZ)
Testing of the candidate image on the desired target architectures is finished, the LandingTeam is notified about the status.
- Information about a valid image candidate is sent to the manufacturers for testing.
Monday morning (EU TZ)
The QA team runs a quick test on the community architectures that will have to be promoted alongside the product image (mako, emulator, etc) and gives a recommendation about realisability of these images to the LandingTeam.
Tuesday evening (EU TZ)
- The manufacturers return feedback regarding the realisability of the OTA.
- A final decision is made based off the decisions of QA, Product management, manufacturers feedback and the Landing Team. The Product Team always have the possibility to veto any of the decisions.
Thursday noon (EU TZ)
The LandingTeam releases the Milestone. The candidate image is copied from RC to stable for all approved channels and devices (ubuntu-touch/stable/*).
Schedule Overview
Offset |
Day |
Date for current OTA |
Events |
|
6 weeks prior to milestone |
||||
-39 |
Friday |
|
|
|
1 week prior to milestone |
||||
-7 |
Tuesday |
|
||
Milestone week |
||||
0 |
Tuesday |
|
|
|
1 |
Wednesday |
|
QA Sanity and Regressions testing |
|
3 |
Friday |
|
Verified candidate sent to device manufacturers, |
|
1 week after the milestone |
||||
7 |
Tuesday |
|
Results from manufacturers, Release decision made |
|
8 |
Wednesday |
|
|
|
9 |
Thursday |
|
End of Phased Upgrades, |
Technical Details
Image server operations
En/Disabling automated build (members of the ubuntu-cdimage team):
On the "nusakan" image build machine, become the cdimage user, find your build entry in the crontab and comment it.
ogra@nusakan:~$ sudo -u cdimage -i cdimage@nusakan:~$ crontab -e
Promoting (members of the ubuntu-cdimage team):
ogra@nusakan:~$ sudo -u cdimage -i cdimage@nusakan:~$ /srv/system-image.ubuntu.com/bin/copy-image ubuntu-touch/ubuntu-rtm/14.09-proposed ubuntu-touch/ubuntu-rtm/14.09 krillin 59
The above shows the promotion command used to release the proposed krillin image 59 into the 14.09 channel on the "nusakan" image build machine. The command is called in a way that the image version in the target channel will automatically be incremented based on the last image in this channel.