diff options
author | Folker Bernitt <fbernitt@thoughtworks.com> | 2015-01-28 12:10:08 +0100 |
---|---|---|
committer | Folker Bernitt <fbernitt@thoughtworks.com> | 2015-01-28 12:11:57 +0100 |
commit | 2ff2612cfd50811f975a320a66402f0b6976e54d (patch) | |
tree | 049fe569a3ec5a0f143a8f938706b8ade80bf1df /install-pixelated.sh | |
parent | 95204fb02aa9ea4e030b972685407e35a0b02f65 (diff) |
Issue #252: Node modules are now installed in the box.
- They are symlinked into /vagrant/web-ui/node_modules
Diffstat (limited to 'install-pixelated.sh')
-rwxr-xr-x | install-pixelated.sh | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/install-pixelated.sh b/install-pixelated.sh index 4679b787..ceff0353 100755 --- a/install-pixelated.sh +++ b/install-pixelated.sh @@ -27,12 +27,15 @@ fi usage() { echo "Usage: $0 [-v <virtualenv path>]" 1>&2; exit 1; } VIRTUALENV_PATH=".virtualenv" - -while getopts "v:" OPT; do +CUSTOM_NODE_MODULES_LOCATION="" +while getopts "n:v:" OPT; do case "${OPT}" in v) VIRTUALENV_PATH=${OPTARG} ;; + n) # custom node_modules installation + CUSTOM_NODE_MODULES_LOCATION=${OPTARG} + ;; *) usage ;; @@ -49,6 +52,31 @@ function check_installed() { fi } +function install_node_modules_at_custom_location() { + local LOCATION="$1" + local WEBUI_DIR=$(pwd) + + if [ -e "$WEBUI_DIR/node_modules" ] ; then + echo "It seems there is already a node_modules folder" 1>&2 + return + fi + + if [ ! -e "$LOCATION" ] ; then + mkdir "$LOCATION" + pushd "$LOCATION" + + ln -s "$WEBUI_DIR/package.json" package.json + npm install + + popd + fi + + if [ ! -h "node_modules" ] ; then + rm -Rf "$LOCATION/node_modules" + ln -s "$LOCATION/node_modules" node_modules + fi +} + for dependency in node npm ruby virtualenv git gpg compass; do check_installed $dependency done @@ -56,7 +84,12 @@ done # install web-ui dependencies cd web-ui UIPATH=`pwd` -npm install + +if [ -z "$CUSTOM_NODE_MODULES_LOCATION" ] ; then + npm install +else + install_node_modules_at_custom_location "$CUSTOM_NODE_MODULES_LOCATION" +fi node_modules/bower/bin/bower install --config.interactive=false --allow-root LC_ALL=en_US.UTF-8 ./go build |