User:Tracy Graydon/Release Process: Difference between revisions
From Yocto Project
Jump to navigationJump to search
Line 24: | Line 24: | ||
* Sync to external mirrors. | * Sync to external mirrors. | ||
* Tag the git repos. | * Tag the git repos. | ||
* Publish the | * Publish the yoctoproject.org pages. | ||
* Test the links to make sure everything works. | * Test the links to make sure everything works. | ||
* Announce the release. | * Announce the release. |
Revision as of 06:10, 3 May 2017
Yocto Release Procedures
This document explains the steps in publishing an official Yocto Project release. This is intended to be a HOWTO Release Guide.
Yocto Project Naming Conventions
Yocto Project releases fall into four main types:
- Major Ex. yocto-2.0
- Minor Ex. yocto-2.1
- Point (aka "patch" release) Ex. yocto-2.1.1
- Milestone Ex. yocto-2.3_M3
A full explanation of release naming conventions, release types, and background can be found here: https://wiki.yoctoproject.org/wiki/Yocto_Project_Release_Process
General Steps for a Release:
- Stage the release candidate.
- Generate or obtain release notes, if applicable.
- Stage/create the Release documentation on YoctoProject.org (unpublished but ready to go).
- Sync the release to the downloads area in preparation for sync to external mirrors.
- Sign the release notes.
- Sync to external mirrors.
- Tag the git repos.
- Publish the yoctoproject.org pages.
- Test the links to make sure everything works.
- Announce the release.
Release Matrix
Major/Minor | Point | Milestone | |
---|---|---|---|
Yoctoproject.org Docs | Yes | Yes | No |
YoctoProject.org Release Page | Yes | Yes | No |
BSP Pages | Yes | Yes | No |
Eclipse Plugin Pages | Yes | Yes | No |
BuildAppliance Page | Yes | Yes | No |
Buildtools Page | Yes | Yes | No |
Release Notes (signed) | Yes | Yes | No |
Tag Release | Yes | Yes | Yes |
Email Announcement | Yes | Yes | Yes |
General Steps for a Release:
Release of Build
- Run the release script to stage the release. http://git.yoctoproject.org/cgit/cgit.cgi/yocto-autobuilder/tree/bin/release_scripts/release.py. This script will do the following...
- Create the staging directory. - Remove the rpm/deb directories. - Delete duplicate files and extraneous blobs, and convert symlinks. - Rename tarballs to reflect current naming conventions. For example. poky-<githash>.tar.bz2 should be renamed to poky-<release_name>-<release_number>.tar.bz2 - Generate the BSP tarballs - Extract the eclipse-plugin archive to http://downloads.yoctoproject.org/releases/eclipse-plugin/<M>.<m> where M.m is the Yocto version - Copy the adt-dev repo to the live site (For release lines prior to 2.0.) - Create the md5sum table for the release
- Copy the staging directory to the downloads directory
- gpg sign the md5sum table
- Create release notes, finalize, get approval, and gpg sign.
- Create the release and BSP pages on yoctoproject.org
- Create the documentation links for the release on yoctoproject.org
- Sync the release out to the mirrors.
- Once sync out is complete, verify that pages work, and download and documentation links work.
- Tag the repos.
- Verify the items on the RELEASE CHECKLIST: https://wiki.yoctoproject.org/wiki/Yocto_Project_Release_Checklist
- Post release announcement on Blog
- Post release announcement on mailing lists (yocto and yocto-announce)
- Update DISTRO and DISTRO_VERSION in master to be the main release+snapshot