Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
H
heroku-buildpack-nodejs
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Python-Dev
heroku-buildpack-nodejs
Commits
fbb2aba0
Commit
fbb2aba0
authored
Jan 14, 2015
by
Hunter Loftis
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #184 from heroku/trap-function-errs
traps errors in functions
parents
630c1caa
070d0a94
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
31 additions
and
28 deletions
+31
-28
compile
bin/compile
+2
-28
build.sh
lib/build.sh
+29
-0
No files found.
bin/compile
View file @
fbb2aba0
...
...
@@ -4,6 +4,7 @@
set
-e
# fail fast
set
-o
pipefail
# don't ignore exit codes when piping output
set
-o
errtrace
# trap errors in functions as well
# set -x # enable debugging
# Configure directories
...
...
@@ -65,34 +66,7 @@ install_npm
head
"Building dependencies"
cd
$build_dir
if
[
"
$modules_source
"
==
""
]
;
then
info
"Skipping dependencies (no source for node_modules)"
elif
[
"
$modules_source
"
==
"prebuilt"
]
;
then
info
"Rebuilding any native modules for this architecture"
npm rebuild 2>&1 | indent
info
"Installing any new modules"
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
else
cache_status
=
$(
get_cache_status
)
if
[
"
$cache_status
"
==
"valid"
]
;
then
info
"Restoring node modules from cache"
cp
-r
$cache_dir
/node/node_modules
$build_dir
/
info
"Pruning unused dependencies"
npm prune 2>&1 | indent
info
"Installing any new modules"
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
else
info
"
$cache_status
"
info
"Installing node modules"
touch
$build_dir
/.npmrc
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
fi
fi
build_dependencies
####### Create a Procfile if possible
...
...
lib/build.sh
View file @
fbb2aba0
...
...
@@ -130,6 +130,35 @@ install_npm() {
fi
}
function
build_dependencies
()
{
if
[
"
$modules_source
"
==
""
]
;
then
info
"Skipping dependencies (no source for node_modules)"
elif
[
"
$modules_source
"
==
"prebuilt"
]
;
then
info
"Rebuilding any native modules for this architecture"
npm rebuild 2>&1 | indent
info
"Installing any new modules"
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
else
cache_status
=
$(
get_cache_status
)
if
[
"
$cache_status
"
==
"valid"
]
;
then
info
"Restoring node modules from cache"
cp
-r
$cache_dir
/node/node_modules
$build_dir
/
info
"Pruning unused dependencies"
npm prune 2>&1 | indent
info
"Installing any new modules"
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
else
info
"
$cache_status
"
info
"Installing node modules"
touch
$build_dir
/.npmrc
npm
install
--quiet
--userconfig
$build_dir
/.npmrc 2>&1 | indent
fi
fi
}
ensure_procfile
()
{
local
start_method
=
$1
local
build_dir
=
$2
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment