ReleaseProcess

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.

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).

UbuntuCore/ReleaseProcess (last edited 2021-05-26 20:35:38 by brian-murray)