diff options
Diffstat (limited to 'scripts/bower/publish.sh')
| -rwxr-xr-x | scripts/bower/publish.sh | 173 | 
1 files changed, 93 insertions, 80 deletions
| diff --git a/scripts/bower/publish.sh b/scripts/bower/publish.sh index a2bf3683..ad77aadc 100755 --- a/scripts/bower/publish.sh +++ b/scripts/bower/publish.sh @@ -1,88 +1,101 @@  #!/bin/bash +# Script for updating the Angular bower repos from current local build. +  echo "#################################"  echo "#### Update bower ###############"  echo "#################################" -# Enable tracing and exit on first failure -set -xe -# Normalize working dir to script dir -cd `dirname $0` - -SCRIPT_DIR=`pwd` -TMP_DIR=../../tmp -BUILD_DIR=../../build -NEW_VERSION=`cat $BUILD_DIR/version.txt` - -REPOS=( -  angular           \ -  angular-animate   \ -  angular-cookies   \ -  angular-i18n      \ -  angular-loader    \ -  angular-mocks     \ -  angular-route     \ -  angular-resource  \ -  angular-sanitize  \ -  angular-scenario  \ -  angular-touch     \ +ARG_DEFS=( +  "--action=(prepare|publish)"  ) -# -# clone repos -# -for repo in "${REPOS[@]}" -do -  echo "-- Cloning bower-$repo" -  git clone git@github.com:angular/bower-$repo.git $TMP_DIR/bower-$repo -done - - -# -# move the files from the build -# - -for repo in "${REPOS[@]}" -do -  if [ -f $BUILD_DIR/$repo.js ] # ignore i18l -    then -      echo "-- Updating files in bower-$repo" -      cd $TMP_DIR/bower-$repo -      git reset --hard HEAD -      git checkout master -      git fetch --all -      git reset --hard origin/master -      cd $SCRIPT_DIR -      cp $BUILD_DIR/$repo.* $TMP_DIR/bower-$repo/ -  fi -done - -# move i18n files -cp $BUILD_DIR/i18n/*.js $TMP_DIR/bower-angular-i18n/ - -# move csp.css -cp $BUILD_DIR/angular-csp.css $TMP_DIR/bower-angular - - -# -# update bower.json -# tag each repo -# - -for repo in "${REPOS[@]}" -do -  echo "-- Updating version in bower-$repo to $NEW_VERSION" -  cd $TMP_DIR/bower-$repo -  sed -i .tmp -E 's/"(version)":[ ]*".*"/"\1": "'$NEW_VERSION'"/g' bower.json -  sed -i .tmp -E 's/"(angular.*)":[ ]*".*"/"\1": "'$NEW_VERSION'"/g' bower.json -  # delete tmp files -  rm *.tmp -  git add -A - -  echo "-- Committing, tagging and pushing bower-$repo" -  git commit -m "v$NEW_VERSION" -  git tag v$NEW_VERSION -  git push origin master -  git push origin v$NEW_VERSION -  cd $SCRIPT_DIR -done +function init { +  TMP_DIR=$(resolveDir ../../tmp) +  BUILD_DIR=$(resolveDir ../../build) +  NEW_VERSION=$(cat $BUILD_DIR/version.txt) +  REPOS=( +    angular +    angular-animate +    angular-cookies +    angular-i18n +    angular-loader +    angular-mocks +    angular-route +    angular-resource +    angular-sanitize +    angular-scenario +    angular-touch +  ) +} + + +function prepare { +  # +  # clone repos +  # +  for repo in "${REPOS[@]}" +  do +    echo "-- Cloning bower-$repo" +    git clone git@github.com:angular/bower-$repo.git $TMP_DIR/bower-$repo +  done + + +  # +  # move the files from the build +  # + +  for repo in "${REPOS[@]}" +  do +    if [ -f $BUILD_DIR/$repo.js ] # ignore i18l +      then +        echo "-- Updating files in bower-$repo" +        cd $TMP_DIR/bower-$repo +        git reset --hard HEAD +        git checkout master +        git fetch --all +        git reset --hard origin/master +        cd $SCRIPT_DIR +        cp $BUILD_DIR/$repo.* $TMP_DIR/bower-$repo/ +    fi +  done + +  # move i18n files +  cp $BUILD_DIR/i18n/*.js $TMP_DIR/bower-angular-i18n/ + +  # move csp.css +  cp $BUILD_DIR/angular-csp.css $TMP_DIR/bower-angular + + +  # +  # update bower.json +  # tag each repo +  # +  for repo in "${REPOS[@]}" +  do +    echo "-- Updating version in bower-$repo to $NEW_VERSION" +    cd $TMP_DIR/bower-$repo +    replaceJsonProp "bower.json" "version" ".*" "$NEW_VERSION" +    replaceJsonProp "bower.json" "angular.*" ".*" "$NEW_VERSION" + +    git add -A + +    echo "-- Committing and tagging bower-$repo" +    git commit -m "v$NEW_VERSION" +    git tag v$NEW_VERSION +    cd $SCRIPT_DIR +  done +} + +function publish { +  for repo in "${REPOS[@]}" +  do +    echo "-- Pushing bower-$repo" +    cd $TMP_DIR/bower-$repo +    git push origin master +    git push origin v$NEW_VERSION +    cd $SCRIPT_DIR +  done +} + +source $(dirname $0)/../utils.inc | 
