Flashrom/Release process: Difference between revisions
Hailfinger (talk | contribs) (flashrom release process) |
Hailfinger (talk | contribs) (→Creating the release tarball: Signing) |
||
Line 29: | Line 29: | ||
cd flashrom-0.9.6 | cd flashrom-0.9.6 | ||
flashrom_release 0.9.6 | flashrom_release 0.9.6 | ||
(replace 0.9.6 with the intended release number). | (replace 0.9.6 with the intended release number). The result is a bzip2 compressed tarball with the release name. | ||
===flashrom_release=== | ===flashrom_release=== | ||
Line 44: | Line 44: | ||
tar cjf $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2 -C $EXPORTDIR/ $TAROPTIONS flashrom-$RELEASENAME/ | tar cjf $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2 -C $EXPORTDIR/ $TAROPTIONS flashrom-$RELEASENAME/ | ||
touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2 | touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2 | ||
===Signing the release tarball=== | |||
gpg --detach-sign --armor flashrom-0.9.6.tar.bz2 | |||
(replace 0.9.6 with the intended release number). |
Revision as of 22:16, 9 July 2013
This is how a release is expected to be done
Pre-release process
Make sure the lead developers agree that the tree is ready for release. Assuming all necessary patches are merged (make sure the man page is up-to-date!), proceed to the next step
Preparing the tree
Increasing the version number
Edit the Makefile and change the line
RELEASE := 0.9.6
to the number of the release. Commit this single-line change with the following changelog:
Increase flashrom release number to 0.9.6
Use Signed-off-by and Acked-by as usual.
Tagging the release
This should be done outside any flashrom directory.
Make sure the version number commit has been pushed to the svn tree. Run
svn cp svn://coreboot.org/flashrom/trunk svn://coreboot.org/flashrom/tags/flashrom-0.9.6
(replace 0.9.6 with the intended release number) and use the following changelog:
Tag flashrom 0.9.6
(replace 0.9.6 with the intended release number). Use Signed-off-by and Acked-by as usual.
Creating the release tarball
This should be done outside any flashrom directory. The flashrom_release script is in the next subsection
svn co svn://coreboot.org/flashrom/tags/flashrom-0.9.6 cd flashrom-0.9.6 flashrom_release 0.9.6
(replace 0.9.6 with the intended release number). The result is a bzip2 compressed tarball with the release name.
flashrom_release
#!/bin/bash test -z $1 && { echo Please supply a release name; exit 1; } export RELEASENAME=$1 export EXPORTDIR=. export TAROPTIONS=$(LC_ALL=C tar --version|grep -q GNU && echo "--owner=root --group=root") make export touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME/Makefile touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME/ChangeLog touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME/util/ touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME/ tar cjf $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2 -C $EXPORTDIR/ $TAROPTIONS flashrom-$RELEASENAME/ touch -d "$(svn log -q|grep ^r|head -1|cut -f 3 -d"|" )" $EXPORTDIR/flashrom-$RELEASENAME.tar.bz2
Signing the release tarball
gpg --detach-sign --armor flashrom-0.9.6.tar.bz2
(replace 0.9.6 with the intended release number).