alfresco-ng2-components/scripts/npm-link-demo-shell.sh
2016-07-28 13:26:33 +01:00

38 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
components_dir="$DIR/../ng2-components"
npm_opts="--loglevel=silent"
function link_alfresco_ng2_deps() {
cd $1
for dep in $( list-dependencies '^ng2-(alfresco|activiti)-' ); do
npm link --ignore-scripts $npm_opts "$dep"
done
}
npm install $npm_opts -g typings
npm install $npm_opts -g @wabson/list-dependencies
# First link each component into /usr/local/lib/node_modules
for comp_dir in $( ls "$components_dir" ); do
echo "Link $components_dir/$comp_dir"
test -f "$components_dir/$comp_dir/package.json" && cd "$components_dir/$comp_dir" && npm link --ignore-scripts
done
# Now link inter-dependencies between components
for comp_dir in $( ls "$components_dir" ); do
echo "Link dependencies of $components_dir/$comp_dir"
test -f "$components_dir/$comp_dir/package.json" && link_alfresco_ng2_deps "$components_dir/$comp_dir"
done
# Now run postinstall scripts
for comp_dir in $( ls "$components_dir" ); do
echo "Postinstall $components_dir/$comp_dir"
test -f "$components_dir/$comp_dir/package.json" && cd "$components_dir/$comp_dir" && npm run postinstall
done
# LINK ALL THE COMPONENTS INSIDE THE DEMOSHELL
link_alfresco_ng2_deps "$DIR/../demo-shell-ng2"