#!/bin/bash -ex GULP=./node_modules/.bin/gulp function install() { npm install touch $GULP # installer doesn't always touch this after a build, so we do. } # Rebuild Gulp if missing or outdated. [ -e $GULP ] || install [ gulpfile.js -nt $GULP ] && install if [ "$1" == "watch" ]; then # Treat "gulp watch" as "gulp && gulp watch" $GULP elif [ "$1" == "all" ]; then pushd . # This is useful when building the Blender Cloud project for the first time. # Run ./gulp in all depending projects (pillar, attract, flamenco, pillar-svnman) declare -a repos=("pillar" "attract" "flamenco" "pillar-svnman") for r in "${repos[@]}" do cd ../$r ./gulp done popd # Run "gulp" once inside the repo $GULP exit 1 fi exec $GULP "$@"