X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;ds=sidebyside;f=bin%2Fsetup.sh;h=b242dc4ae1e4767f5a35750e9e7883718ea72178;hb=2b045ddda290d41157e35bca77ef5290247c63fa;hp=ab58b716259df2b99bfd4f391918c364e1067be5;hpb=4c12c9b771bde931077f56685b632bd34504b238;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