]> git.e2factory.org Git - e2factory.git/commitdiff
update release process
authorGordon Hecker <gh@emlix.com>
Tue, 2 Jun 2009 11:03:07 +0000 (13:03 +0200)
committerGordon Hecker <gh@emlix.com>
Thu, 4 Jun 2009 08:19:39 +0000 (10:19 +0200)
Signed-off-by: Gordon Hecker <gh@emlix.com>
Changelog
Makefile
README.RELEASE_PROCESS
release.sh [changed mode: 0644->0755]

index a8b0d97130a5d8864600e86fbfe65aeb81f23d03..f154d9d9da1c97b7e7c244538a985542543811f4 100644 (file)
--- a/Changelog
+++ b/Changelog
@@ -1,4 +1,4 @@
-e2factory-2.3.0-wip
+NEXT:
 
 e2factory-2.3.0
  * INSTALL documentation changes
index c8f851a33638e74170f1a05a169be3274118cc65..6b711cd506508944006bcde28754421492fa7149 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -157,3 +157,6 @@ dist:
 
 tag:
        git tag $(TAG)
+
+showtag:
+       @echo $(TAG)
index 957c2b578078ebee899c3f12c970df6f3c987969..74ae86f5c975efd8215f7bd48614983065abe851 100644 (file)
@@ -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)
old mode 100644 (file)
new mode 100755 (executable)
index d1a3229..ced8818
@@ -1,48 +1,33 @@
+#!/bin/bash
+
 #E=echo
 E=""
 cat <<EOF
 Release Checklist:
 
- * is the configuration syntax list up-to-date? (see syntax, local/e2tool.lua)
- * is the configuration version in global/e2.conf.in up-to-date?
+ * is the release string set correctly? (make.vars)
+ * is the Changelog entry up-to-date (NEXT:) ?
+ * is the configuration syntax list up-to-date? (make vars: SYNTAX)
 
 EOF
-read -p "type yes to proceed> " 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 <<EOF
-$RELEASE_NAME
+$E git commit -s -m "release $TAG" Changelog make.vars
+$E git tag "$TAG"
+cat - Changelog >Changelog.new <<EOF
+NEXT:
 
 EOF
-vi Changelog # edit the release string: wip again
-echo ==================
-echo Changelog:
-head Changelog
-echo Version: $VERSION
-echo Release Name: $RELEASE_NAME
-echo ==================
-read -p "commit, push?"
-$E git commit -m "work in progress $RELEASE_NAME" version Changelog
-$E git push
-
+mv Changelog.new Changelog
+$E git commit -s -m "create next changelog entry" Changelog