To be carried out by the Canonical Foundations team.
The release of a new ubuntu-core stable image is a rather simple and straightforward process. Access to ancientminister (cdimage) is required.
Release minus 3 weeks:
- Coordinate with the kernel and snapd teams about the incoming new ubuntu-core release.
- Make sure that kernel and snapd snaps are ready in stable at least a week before the planned release date.
- Query the Certification Team for early sanity test results of the current edge-based daily images, to find any possible blockers as early as possible.
The Certification Team currently runs automated testing of all daily-built images and shares the results on the https://trello.com/b/HCbXsaQj/certification-image-testing board.
Release minus 7 days:
- (optional) Create a release tracking document, sharing it with management, Certification Team and the snapd team. Keep the document up-to-date with the current state of the release, so that all involved parties know in which stage the release is right now.
Check if the base snap (core, core16 or core18, depending on the release) is up-to-date in stable. If not, perform required promotion testing and promote it to stable (see UbuntuCore/Development for details).
Check if all the supported gadget snaps (pi, dragonboard, pc etc.) are up-to-date in stable. If not, perform required promotion testing and promote them to stable (see UbuntuCore/Development for details).
- Build the release candidate image.
- Before starting the build, make sure that all relevant snaps are phased out at 100%, as otherwise there is no guarantee the build will pick up the latest version.
On ancientminister in screen, as cdimage, run: DIST=<SERIES> CHANNEL=stable for-project ubuntu-core cron.daily-live --live where <SERIES> is either xenial for 16 and bionic for 18.
- Disabling of daily images is not required as those are built separately and published to a different directory structure on cdimage.
- Once images are built, send a request for testing to the Certification Team (current POCs: cwayne or plars) and the Snapd Team (current POCs: mvo or cachio) including the link to the RC image directory on cdimage.
- Iterate on testing results, re-spinning images when necessary.
- Once images are blessed by the Certification Team and the Snapd Team as ready for release, inform the product management about the release being ready.
Release day:
- On release day, promote the RC stable image to current.
On ancientminister, as cdimage, go to the www/full/ubuntu-core/<SERIES>/stable/ directory where <SERIES> is either 16 or 18.
- If current is a symlink, change it to point to the new stable release image that has just been validated.
- If current is not a symlink but a regular directory, cd inside it and then change the links to the images inside. Be sure to also symlink and/or update the MD5SUMS and sign them, if needed.
Regenerate the Raspi Installer JSON file to include the latest core images and checksums (ping waveform or sil2100).