1#!/bin/bash 2 3# ---------------------------------------------------------------------------- 4# Hvigor startup script, version 1.0.0 5# 6# Required ENV vars: 7# ------------------ 8# NODE_HOME - location of a Node home dir 9# or 10# Add /usr/local/nodejs/bin to the PATH environment variable 11# ---------------------------------------------------------------------------- 12 13HVIGOR_APP_HOME="`pwd -P`" 14HVIGOR_WRAPPER_SCRIPT=${HVIGOR_APP_HOME}/hvigor/hvigor-wrapper.js 15#NODE_OPTS="--max-old-space-size=4096" 16 17fail() { 18 echo "$*" 19 exit 1 20} 21 22set_executable_node() { 23 EXECUTABLE_NODE="${NODE_HOME}/bin/node" 24 if [ -x "$EXECUTABLE_NODE" ]; then 25 return 26 fi 27 28 EXECUTABLE_NODE="${NODE_HOME}/node" 29 if [ -x "$EXECUTABLE_NODE" ]; then 30 return 31 fi 32 fail "ERROR: NODE_HOME is set to an invalid directory,check $NODE_HOME\n\nPlease set NODE_HOME in your environment to the location where your nodejs installed" 33} 34 35# Determine node to start hvigor wrapper script 36if [ -n "${NODE_HOME}" ]; then 37 set_executable_node 38else 39 EXECUTABLE_NODE="node" 40 command -v ${EXECUTABLE_NODE} &> /dev/null || fail "ERROR: NODE_HOME not set and 'node' command not found" 41fi 42 43# Check hvigor wrapper script 44if [ ! -r "$HVIGOR_WRAPPER_SCRIPT" ]; then 45 fail "ERROR: Couldn't find hvigor/hvigor-wrapper.js in ${HVIGOR_APP_HOME}" 46fi 47 48if [ -z "${NODE_OPTS}" ]; then 49 NODE_OPTS="--" 50fi 51 52# start hvigor-wrapper script 53exec "${EXECUTABLE_NODE}" "${NODE_OPTS}" \ 54 "${HVIGOR_WRAPPER_SCRIPT}" "$@" 55