releaseengineering:tasks

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
releaseengineering:tasks [2013/03/18 23:46] – CraigRodriguesreleaseengineering:tasks [2014/11/23 02:59] (current) – CraigRodrigues
Line 1: Line 1:
-====== What tasks must a FreeBSD Release Engineer do during the release process? ====== +====== FreeBSD Release Engineering process ====== 
- +===== Tasks =====
-Here are some ideas:+
  
   - Post an announcement to developers@%%FreeBSD%%.org as well as the general public announcing the code freeze time   - Post an announcement to developers@%%FreeBSD%%.org as well as the general public announcing the code freeze time
- 
   - When that day comes, the release engineer commits to **svnadmin/conf/approvers** to implement the hard freeze   - When that day comes, the release engineer commits to **svnadmin/conf/approvers** to implement the hard freeze
- 
   - The release engineer commits to bump the name of X.Y-STABLE to X.$(Y+1)-PRERELEASE, and post a note   - The release engineer commits to bump the name of X.Y-STABLE to X.$(Y+1)-PRERELEASE, and post a note
 +  - [[ReleaseEngineering/ReleaseNotesPreparation|Prepare the Release Notes]]
   - After a few days, post BETA1, ask the community for testing   - After a few days, post BETA1, ask the community for testing
- 
   - Once BETA1 is built, notify security-officer@%%FreeBSD%%.org for freebsd-update build.   - Once BETA1 is built, notify security-officer@%%FreeBSD%%.org for freebsd-update build.
- 
   - Decide whether we want to go with BETA2 here.   - Decide whether we want to go with BETA2 here.
- 
   - A date is set for RC1, at RC1, create release branch, bump __%%FreeBSDversion%%__ on stable/ and releng/ trees (releng/ is now named as '-RC1'), and unfreeze stable/ saying it's back to "code slush" and at this stage, release notes shall be finalized.   - A date is set for RC1, at RC1, create release branch, bump __%%FreeBSDversion%%__ on stable/ and releng/ trees (releng/ is now named as '-RC1'), and unfreeze stable/ saying it's back to "code slush" and at this stage, release notes shall be finalized.
- 
   - A date is set for RC2 (typically, one week per RC), bump version, build, announce, etc.  All installation related bugs must be shaken out at this stage.  For each RC, notify so@ for new freebsd-update build.   - A date is set for RC2 (typically, one week per RC), bump version, build, announce, etc.  All installation related bugs must be shaken out at this stage.  For each RC, notify so@ for new freebsd-update build.
- 
   - Final release: bump version, do final test build, tag, checkout from tag, do the real final build.   - Final release: bump version, do final test build, tag, checkout from tag, do the real final build.
 +
 +====== File to update ======
 +
 +Before the final release can be tagged, built, and released, the following files need to be modified to reflect the correct version of %%FreeBSD%%:
 +
 +  * doc/en_US.ISO8859-1/books/handbook/mirrors/chapter.xml
 +  * doc/en_US.ISO8859-1/books/porters-handbook/book.xml
 +  * doc/share/xml/freebsd.ent
 +  * src/Makefile.inc1
 +  * src/UPDATING
 +  * src/gnu/usr.bin/groff/tmac/mdoc.local
 +  * src/release/Makefile
 +  * src/release/doc/en_US.ISO8859-1/share/xml/release.dsl
 +  * src/release/doc/share/examples/Makefile.relnotesng
 +  * src/release/doc/share/xml/release.ent
 +  * src/sys/conf/newvers.sh
 +  * src/sys/sys/param.h
 +  * src/usr.sbin/pkg_install/add/main.c
 +  * www/en/docs/man.xml
 +  * www/en/cgi/ports.cgi
 +  * ports/Tools/scripts/release/config
 +
 +The release notes and errata files also need to be adjusted for the new release (on the release branch) and truncated appropriately (on the stable/current branch):
 +
 +  * src/release/doc/en_US.ISO8859-1/relnotes/common/new.xml
 +  * src/release/doc/en_US.ISO8859-1/errata/article.xml 
 +
 +Sysinstall should be updated to note the number of available ports and the amount of disk space required for the Ports Collection. This information is currently kept in src/usr.sbin/sysinstall/dist.c.
 +
 +After the release has been built, a number of files should be updated to announce the release to the world. These files are relative to head/ within the doc/ subversion tree.
 +
 +  * share/images/articles/releng/branches-relengX.pic
 +  * head/share/xml/release.ent
 +  * en_US.ISO8859-1/htdocs/releases/*
 +  * en_US.ISO8859-1/htdocs/releng/index.xml
 +  * share/xml/news.xml
 +
 +Additionally, update the “BSD Family Tree” file:
 +
 +  * src/share/misc/bsd-family-tree
  
 ===== Acknowledgments ===== ===== Acknowledgments =====
  
-[[/XinLi]] provided most of the ideas on this page.+  * [[/MurrayStokely]] provided a lot of the content on this page from an earlier article which he wrote on %%FreeBSD%% Release Engineering 
 +  * [[/XinLi]] provided many of the items on this page.
  
  • releaseengineering/tasks.1363650409.txt.gz
  • Last modified: 2013/03/18 23:46
  • by CraigRodrigues