From 9a4c9e6487e0f51275a7820d0c162aceeadbf561 Mon Sep 17 00:00:00 2001 From: Tobias Bosch Date: Fri, 13 Dec 2013 20:02:15 -0800 Subject: chore(build): correct and refactor release script --- scripts/jenkins/bump-increment.sh | 25 +++++++++++++++++++++ scripts/jenkins/bump-remove-snapshot.sh | 20 +++++++++++++++++ scripts/jenkins/master.sh | 23 ++++++++++++++----- scripts/jenkins/release.sh | 40 ++++++++++++++++----------------- 4 files changed, 81 insertions(+), 27 deletions(-) create mode 100755 scripts/jenkins/bump-increment.sh create mode 100755 scripts/jenkins/bump-remove-snapshot.sh (limited to 'scripts/jenkins') diff --git a/scripts/jenkins/bump-increment.sh b/scripts/jenkins/bump-increment.sh new file mode 100755 index 00000000..1a000fe0 --- /dev/null +++ b/scripts/jenkins/bump-increment.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +echo "############################################" +echo "## Increment version and add "-snapshot" ##" +echo "############################################" + +if [ "$1" != "patch" -a "$1" != "minor" -a "$1" != "major" ]; then + echo "Please specify the next version type: patch|minor|major" + exit 1 +fi +BUMP_TYPE=$1 + +# Enable tracing and exit on first failure +set -xe +# Normalize working dir to script dir +cd `dirname $0`/../.. + +echo "-- increment version " +grunt bump:$BUMP_TYPE +NEXT_VERSION=$(node -e "console.log(require('./package.json').version)" | sed -e 's/\r//g') +sed -i .tmp -e 's/"version": "\(.*\)"/"version": "\1-snapshot"/' package.json +echo "-- new version: `grep '"version"' package.json`" +echo "-- commit" +git add package.json +git commit -m "chore(release): start v$NEXT_VERSION" \ No newline at end of file diff --git a/scripts/jenkins/bump-remove-snapshot.sh b/scripts/jenkins/bump-remove-snapshot.sh new file mode 100755 index 00000000..cb1803cb --- /dev/null +++ b/scripts/jenkins/bump-remove-snapshot.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +echo "############################################" +echo "## Remove "-snapshot" from version ########" +echo "############################################" + +# Enable tracing and exit on first failure +set -xe +# Normalize working dir to script dir +cd `dirname $0`/../.. + +echo "-- old version: `grep '"version"' package.json`" +sed -i .tmp -e 's/"version": "\(.*\)-snapshot"/"version": "\1"/' package.json +VERSION=$(node -e "console.log(require('./package.json').version)" | sed -e 's/\r//g') +echo "-- local version: $VERSION" + +echo "-- commit and tag with v$VERSION" +git add package.json +git commit -m "chore(release): v$VERSION" +git tag -m "v$VERSION" v$VERSION diff --git a/scripts/jenkins/master.sh b/scripts/jenkins/master.sh index 38c21b97..a4fe50ac 100755 --- a/scripts/jenkins/master.sh +++ b/scripts/jenkins/master.sh @@ -1,14 +1,25 @@ #!/bin/bash -set -e # fail if any command fails +echo "#################################" +echo "#### Update master ##############" +echo "#################################" + +# Enable tracing and exit on first failure +set -xe + cd `dirname $0`/../.. -# Build +echo "#################################" +echo "#### Jenkins Build ############" +echo "#################################" ./jenkins_build.sh -# Update code.angularjs.org -VERSION=`cat build/version.txt` -curl -G --data-urlencode 'ver=$VERSION' http://code.angularjs.org/fetchLatestSnapshot.php +echo "#################################" +echo "## Update code.angular.js.org ###" +echo "#################################" +./scripts/code.angularjs.org/publish.sh -# Push to bower +echo "#################################" +echo "#### Update bower ###############" +echo "#################################" ./scripts/bower/publish.sh \ No newline at end of file diff --git a/scripts/jenkins/release.sh b/scripts/jenkins/release.sh index be75efd7..444f5bdd 100755 --- a/scripts/jenkins/release.sh +++ b/scripts/jenkins/release.sh @@ -1,40 +1,38 @@ #!/bin/bash -if [ -z "$1" ]; then - echo "Please specify the version bump type: patch|minor|major" - exit 1 +echo "#################################" +echo "#### Cut release ################" +echo "#################################" + +if [ "$1" != "patch" -a "$1" != "minor" -a "$1" != "major" ]; then + echo "Please specify the next version type: patch|minor|major" + exit 1 fi +BUMP_TYPE=$1 -set -e # fail if any command fails +# Enable tracing and exit on first failure +set -xe +# Normalize working dir to script dir cd `dirname $0`/../.. -BUMP_TYPE=$1 -# bump versions: remove "-snapshot" suffix -sed -i .tmp -e 's/"version": "\(.*\)-snapshot"/"version": "\1"/' package.json + +# Bump versions: remove "-snapshot" suffix +./scripts/jenkins/bump-remove-snapshot.sh # Build ./jenkins_build.sh -VERSION=`cat build/version.txt` - -# Commit and tag -git add package.json -git commit -m "chore(release): v$VERSION" -git tag -m "v$VERSION" v$VERSION -# bump versions: increment version number and add "-snapshot" -grunt bump:$BUMP_TYPE -NEXT_VERSION=$(node -e "console.log(require('./package.json').version)" | sed -e 's/\r//g') -sed -i .tmp -e 's/"version": "\(.*\)"/"version": "\1-snapshot"/' package.json -git add package.json -git commit -m "chore(release): start v$NEXT_VERSION" +# Bump versions: Increment version and add "-snapshot" +./scripts/jenkins/bump-increment.sh $BUMP_TYPE +echo "-- push to Github" # push to github -# TODO git push +git push # Update code.angularjs.org ./scripts/code.angularjs.org/publish.sh -# Push to bower +# Update bower ./scripts/bower/publish.sh -- cgit v1.2.3