Flashrom/Release process: Difference between revisions

From flashrom
Jump to navigation Jump to search
(flashrom release process)
 
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).