#!/usr/bin/env bash

build_dir=$1
cache_dir=$2
lp_dir=$(cd $(dirname $0); cd ..; pwd)
stable_version="0.10.15"

source $lp_dir/bin/common.sh

# Output debug info on exit
trap cat_npm_debug_log EXIT

download_node $stable_version

# cd $build_dir

# Is a node version specified in package.json?
requested_version=$(cat $build_dir/package.json | node $lp_dir/vendor/json engines.node 2>/dev/null)
# echo "requested_version: $requested_version"
if test $requested_version; then
  default_satisfies=$(node $lp_dir/vendor/semver/bin/semver $stable_version -r "$requested_version")
  if ! test $default_satisfies; then
    download_node $requested_version
  fi
fi

status "Installing dependencies with npm"
npm prune
npm install --production
npm rebuild
echo "Dependencies installed" | indent

status "Building runtime environment"
mkdir -p $build_dir/.profile.d
echo "export PATH=\"\$HOME/node/bin:$HOME/bin:\$HOME/node_modules/.bin:\$PATH\"" > $build_dir/.profile.d/nodejs.sh