Unverified Commit 34818989 authored by Jeremy Morrell's avatar Jeremy Morrell Committed by GitHub

Add metadata logging when the build fails (#630)

* Add metadata logging when the build fails
parent 99ebd7cb
...@@ -70,6 +70,7 @@ handle_failure() { ...@@ -70,6 +70,7 @@ handle_failure() {
echo " Read more: https://devcenter.heroku.com/changelog-items/1573" echo " Read more: https://devcenter.heroku.com/changelog-items/1573"
echo "" echo ""
meta_set "node-build-success" "false"
header "Build failed" header "Build failed"
fail_yarn_outdated "$LOG_FILE" fail_yarn_outdated "$LOG_FILE"
fail_yarn_lockfile_outdated "$LOG_FILE" fail_yarn_lockfile_outdated "$LOG_FILE"
...@@ -81,6 +82,7 @@ handle_failure() { ...@@ -81,6 +82,7 @@ handle_failure() {
warn_angular_resolution "$LOG_FILE" warn_angular_resolution "$LOG_FILE"
warn_missing_devdeps "$LOG_FILE" "$BUILD_DIR" warn_missing_devdeps "$LOG_FILE" "$BUILD_DIR"
warn_econnreset "$LOG_FILE" warn_econnreset "$LOG_FILE"
log_meta_data >> "$BUILDPACK_LOG_FILE"
failure_message | output "$LOG_FILE" failure_message | output "$LOG_FILE"
} }
trap 'handle_failure' ERR trap 'handle_failure' ERR
......
#!/usr/bin/env bash #!/usr/bin/env bash
log_initial_state() { log_initial_state() {
meta_set "buildpack" "nodejs"
if "$YARN"; then if "$YARN"; then
meta_set "node-package-manager" "yarn" meta_set "node-package-manager" "yarn"
meta_set "has-node-lock-file" "true" meta_set "has-node-lock-file" "true"
......
This diff is collapsed.
...@@ -1043,11 +1043,9 @@ testMemoryMetrics() { ...@@ -1043,11 +1043,9 @@ testMemoryMetrics() {
} }
testBuildMetaData() { testBuildMetaData() {
env_dir=$(mktmpdir)
local log_file=$(mktemp) local log_file=$(mktemp)
echo "$log_file" > $env_dir/BUILDPACK_LOG_FILE
compile "pre-post-build-scripts" "$(mktmpdir)" $env_dir BUILDPACK_LOG_FILE="$log_file" compile "pre-post-build-scripts"
# build info # build info
assertFileContains "node-package-manager=npm" $log_file assertFileContains "node-package-manager=npm" $log_file
...@@ -1084,7 +1082,7 @@ testBuildMetaData() { ...@@ -1084,7 +1082,7 @@ testBuildMetaData() {
# erase the log file # erase the log file
echo "" > $log_file echo "" > $log_file
compile "yarn" "$(mktmpdir)" $env_dir BUILDPACK_LOG_FILE="$log_file" compile "yarn"
assertFileContains "node-package-manager=yarn" $log_file assertFileContains "node-package-manager=yarn" $log_file
assertFileContains "has-node-lock-file=true" $log_file assertFileContains "has-node-lock-file=true" $log_file
...@@ -1095,6 +1093,19 @@ testBuildMetaData() { ...@@ -1095,6 +1093,19 @@ testBuildMetaData() {
assertFileContains "node-build-success=true" $log_file assertFileContains "node-build-success=true" $log_file
} }
testFailingBuildMetaData() {
local log_file=$(mktemp)
BUILDPACK_LOG_FILE="$log_file" compile "bad-json"
assertFileContains "failure=invalid-package-json" $log_file
assertCapturedError
echo "" > $log_file
BUILDPACK_LOG_FILE="$log_file" compile "yarn-lockfile-out-of-date"
assertFileContains "failure=outdated-yarn-lockfile" $log_file
assertCapturedError
}
testPropagateAppUUID() { testPropagateAppUUID() {
env_dir=$(mktmpdir) env_dir=$(mktmpdir)
local log_file=$(mktemp) local log_file=$(mktemp)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment