From: Gordon Hecker Date: Tue, 2 Jun 2009 11:03:07 +0000 (+0200) Subject: update release process X-Git-Tag: e2factory-2.3.1pre1~4 X-Git-Url: https://git.e2factory.org/?a=commitdiff_plain;h=4a9510077036a8c50cdb53757c0798e6b5f92004;p=e2factory.git update release process Signed-off-by: Gordon Hecker --- diff --git a/Changelog b/Changelog index a8b0d97..f154d9d 100644 --- a/Changelog +++ b/Changelog @@ -1,4 +1,4 @@ -e2factory-2.3.0-wip +NEXT: e2factory-2.3.0 * INSTALL documentation changes diff --git a/Makefile b/Makefile index c8f851a..6b711cd 100644 --- a/Makefile +++ b/Makefile @@ -157,3 +157,6 @@ dist: tag: git tag $(TAG) + +showtag: + @echo $(TAG) diff --git a/README.RELEASE_PROCESS b/README.RELEASE_PROCESS index 957c2b5..74ae86f 100644 --- a/README.RELEASE_PROCESS +++ b/README.RELEASE_PROCESS @@ -13,30 +13,12 @@ as buildids would change with each single commit. 2. The release process -Releasing e2 requires the following steps: -step 1. change the ./version file (setting the version string) -step 2. commit -step 3. tag -step 4. change the ./version file (appending the "-wip" postfix again) -step 5. commit -step 6. push +Releasing e2factory requires the following steps: +step 1. run the release.sh script + (update the version-related variables in make.vars, update the + Changelog file) +step 2. push the release tag (git push --tags) 3. Version and Release naming Any e2 version follows this naming scheme: -MAJOR.MINOR(.PATCHLEVEL)(preNUMBER|rcNUMBER)?(-wip)? -The release name is the version name including the "e2-" prefix - -4. Shell code to support the release process -# set the VERSION variable first, e.g. VERSION="2.2pre1-wip" -RELEASE_NAME="e2-$VERSION" -echo $VERSION >./version -vi Changelog # edit the release string -git commit -m "release $RELEASE_NAME" version Changelog -git tag "$RELEASE_NAME" -git push origin "$RELEASE_NAME" -VERSION=${VERSION}-wip -RELEASE_NAME="e2-$VERSION" -echo $VERSION >./version -vi Changelog # edit the release string: wip again -git commit -m "work in progress $RELEASE_NAME" version Changelog -git push +NAME-MAJOR.MINOR.PATCHLEVEL(EXTRAVERSION) diff --git a/release.sh b/release.sh old mode 100644 new mode 100755 index d1a3229..ced8818 --- a/release.sh +++ b/release.sh @@ -1,48 +1,33 @@ +#!/bin/bash + #E=echo E="" cat < " OK + +vi make.vars +TAG=$(make showtag) +sed -i -r -e s,"^NEXT:.*","$TAG", Changelog +vi Changelog +echo "Release name will be: $TAG" +echo "Changes in the final commit:" +$E git diff HEAD Changelog make.vars +echo "" +read -p "Release? Type yes to proceed> " OK if [ "$OK" != "yes" ] ; then exit 1 fi -echo "Example: 2.2pre7" -read -p "VERSION:" VERSION -RELEASE_NAME="e2factory-$VERSION" -echo $VERSION >./version -vi Changelog # edit the release string -echo ================== -echo Changelog: -head Changelog -echo Version: $VERSION -echo Release Name: $RELEASE_NAME -echo ================== -read -p "commit, tag, push?" -$E git commit -m "release $RELEASE_NAME" version Changelog -$E git tag "$RELEASE_NAME" -$E git push origin "$RELEASE_NAME" - -VERSION=${VERSION}-wip -RELEASE_NAME="e2factory-$VERSION" -echo $VERSION >./version -mv Changelog Changelog.tmp -cat - Changelog.tmp > Changelog <Changelog.new <