X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=bin%2Fsetup.sh;h=b242dc4ae1e4767f5a35750e9e7883718ea72178;hb=b70035bab4234aef6ad7d8e738563e845f876859;hp=ab58b716259df2b99bfd4f391918c364e1067be5;hpb=d915e35aa448a424f9e04611a4bec8249dacc332;p=civicrm-core.git diff --git a/bin/setup.sh b/bin/setup.sh index ab58b71625..b242dc4ae1 100755 --- a/bin/setup.sh +++ b/bin/setup.sh @@ -151,8 +151,24 @@ if [ -n "$DO_DOWNLOAD" ]; then fi BOWER=$(pickcmd node_modules/bower/bin/bower bower) - # Without the force flag bower won't check for new versions or verify that installed software matches version specified in bower.json - $BOWER install -f + if [ -f "$BOWER" ]; then + NODE=$(pickcmd node nodejs) + BOWER="$NODE $BOWER" + fi + # Without the force flag, bower may not check for new versions or verify that installed software matches version specified in bower.json + # With the force flag, bower will ignore all caches and download all deps. + if [ -n "$OFFLINE" ]; then + BOWER_OPT= + elif [ ! -f "bower_components/.setupsh.ts" ]; then + ## First run -- or cleanup from failed run + BOWER_OPT=-f + elif [ "bower.json" -nt "bower_components/.setupsh.ts" ]; then + ## Bower.json has changed since last run + BOWER_OPT=-f + fi + [ -f "bower_components/.setupsh.ts" ] && rm -f "bower_components/.setupsh.ts" + $BOWER install $BOWER_OPT + touch bower_components/.setupsh.ts popd fi