chore(build): correct and refactor release script

This commit is contained in:
Tobias Bosch
2013-12-13 20:02:15 -08:00
parent 11fff8fa0d
commit 9a4c9e6487
7 changed files with 126 additions and 54 deletions

View File

@@ -1,43 +1,46 @@
#!/bin/bash
#
# update all the things
#
set -e # fail if any command fails
echo "#################################"
echo "## Update code.angular.js.org ###"
echo "#################################"
# Enable tracing and exit on first failure
set -xe
# Normalize working dir to script dir
cd `dirname $0`
SCRIPT_DIR=`pwd`
# export so that node.js can read those env settings
export TMP_DIR=../../tmp
export REPO_DIR=$TMP_DIR/code.angularjs.org
export BUILD_DIR=../../build
NEW_VERSION=$(node -e "console.log(require(process.env.BUILD_DIR+'/version.json').full)" | sed -e 's/\r//g')
SCRIPT_DIR=`pwd`
NEW_VERSION=`cat $BUILD_DIR/version.txt`
#
# Don't publish snapshot builds!
# Snapshot builds are kept in a temp directory in code.angularjs.org
# that is filled by calling a php script there.
#
if [[ "$NEW_VERSION" =~ sha ]] ;then
echo "publish to code.angularjs.org is not allowed for snapshot builds"
exit 1;
echo "-- updating snapshot version"
curl -G --data-urlencode "ver=$NEW_VERSION" http://code.angularjs.org/fetchLatestSnapshot.php
exit 0;
fi
exit 2
#
# clone
#
echo "-- Cloning code.angularjs.org"
git clone git@github.com:angular/code.angularjs.org.git $REPO_DIR
#
# copy the files from the build
#
echo "-- Updating code.angularjs.org"
mkdir $REPO_DIR/$NEW_VERSION
cd $REPO_DIR
git reset --hard HEAD
git checkout master
@@ -49,9 +52,14 @@ cp -r $BUILD_DIR/* $REPO_DIR/$NEW_VERSION/
#
# commit and push
#
echo "-- Committing and pushing code.angularjs.org"
cd $REPO_DIR
git add -A
git commit -m "v$NEW_VERSION"
# TODO git push origin master
git push origin master
cd $SCRIPT_DIR
#
# refresh code.angularjs.org from github
#
curl http://code.angularjs.org/gitFetchSite.php