heroku / heroku-repo

Plugin for heroku CLI that can manipulate the repo
MIT License
682 stars 111 forks source link

grunt command not found error after heroku repo purge #75

Closed anshukch closed 5 months ago

anshukch commented 6 years ago

Lately we did a heroku repo purge for one of our apps and after that builds to the app are failing with following error. Earlier to the purge, the exact same config worked as intended.

bin/run_grunt: line 5: grunt: command not found ! Push rejected, failed to compile Python app. ! Push failed

I see in logs that grunt is being installed though. Pasting relevant log below. Please let me know if any other info is required. Thanks.

-----> Running post-compile hook -----> Running install_nodejs - Latest /tmp/node_0sKT /tmp/build_850417d0875673f0d96bec05cd0ff1da /tmp/build_850417d0875673f0d96bec05cd0ff1da mkdir: created directory ‘/tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor’ /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor /tmp/build_850417d0875673f0d96bec05cd0ff1da /tmp/build_850417d0875673f0d96bec05cd0ff1da -----> Running install_lessc - Less Compiler /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/bin/lessc -> /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/less/bin/lessc less@1.4.0 /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/less ├── mime@1.2.11 ├── mkdirp@0.3.5 ├── ycssmin@1.0.1 └── request@2.81.0 (forever-agent@0.6.1, oauth-sign@0.8.2, aws-sign2@0.6.0, tunnel-agent@0.6.0, is-typedarray@1.0.0, caseless@0.12.0, safe-buffer@5.1.1, stringstream@0.0.5, aws4@1.6.0, isstream@0.1.2, json-stringify-safe@5.0.1, extend@3.0.1, performance-now@0.2.0, uuid@3.1.0, qs@6.4.0, combined-stream@1.0.5, mime-types@2.1.17, tough-cookie@2.3.2, form-data@2.1.4, hawk@3.1.3, http-signature@1.1.1, har-validator@4.2.1) -----> Running install_gruntcli - Grunt Command Line /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/bin/grunt -> /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/grunt-cli/bin/grunt grunt-cli@1.2.0 /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/grunt-cli ├── grunt-known-options@1.1.0 ├── nopt@3.0.6 (abbrev@1.1.0) ├── resolve@1.1.7 └── findup-sync@0.3.0 (glob@5.0.15) -----> Running install_grunt_and_friends - Grunt and Friends npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree. npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue grunt@0.4.5 node_modules/grunt ├── eventemitter2@0.4.14 ├── dateformat@1.0.2-1.2.3 ├── which@1.0.9 ├── getobject@0.1.0 ├── async@0.1.22 ├── colors@0.6.2 ├── lodash@0.9.2 ├── rimraf@2.2.8 ├── hooker@0.2.3 ├── grunt-legacy-util@0.2.0 ├── exit@0.1.2 ├── nopt@1.0.10 (abbrev@1.1.0) ├── coffee-script@1.3.3 ├── iconv-lite@0.2.11 ├── underscore.string@2.2.1 ├── minimatch@0.2.14 (sigmund@1.0.1, lru-cache@2.7.3) ├── glob@3.1.21 (inherits@1.0.2, graceful-fs@1.2.3) ├── grunt-legacy-log@0.1.3 (grunt-legacy-log-utils@0.1.1, lodash@2.4.2, underscore.string@2.3.3) ├── findup-sync@0.1.3 (lodash@2.4.2, glob@3.2.11) └── js-yaml@2.0.5 (esprima@1.0.4, argparse@0.1.16) /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/bin/grunt -> /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/grunt-cli/bin/grunt grunt-cli@1.2.0 /tmp/build_850417d0875673f0d96bec05cd0ff1da/.heroku/vendor/node/lib/node_modules/grunt-cli ├── grunt-known-options@1.1.0 ├── nopt@3.0.6 (abbrev@1.1.0) ├── findup-sync@0.3.0 (glob@5.0.15) └── resolve@1.1.7 grunt-contrib-clean@0.6.0 node_modules/grunt-contrib-clean └── rimraf@2.2.8 grunt-contrib-concat@0.5.1 node_modules/grunt-contrib-concat ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.5, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0) └── source-map@0.3.0 (amdefine@1.0.1) grunt-contrib-less@1.0.0 node_modules/grunt-contrib-less ├── async@0.9.2 ├── lodash@2.4.2 ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.5, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0) └── less@2.7.2 (graceful-fs@4.1.11, mime@1.4.0, image-size@0.5.5, source-map@0.5.7, errno@0.1.4, mkdirp@0.5.1, promise@7.3.1, request@2.81.0) grunt-contrib-uglify@0.8.0 node_modules/grunt-contrib-uglify ├── uri-path@0.0.2 ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.5, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0) ├── uglify-js@2.8.29 (uglify-to-browserify@1.0.2, source-map@0.5.7, yargs@3.10.0) ├── maxmin@1.1.0 (figures@1.7.0, chalk@1.1.3, gzip-size@1.0.0, pretty-bytes@1.0.4) └── lodash@3.10.1 npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree. grunt-contrib-watch@0.6.1 node_modules/grunt-contrib-watch ├── async@0.2.10 ├── lodash@2.4.2 ├── tiny-lr-fork@0.0.5 (debug@0.7.4, qs@0.5.6, faye-websocket@0.4.4, noptify@0.0.3) └── gaze@0.5.2 (globule@0.1.0) typechecker@2.0.8 preinstall /tmp/build_850417d0875673f0d96bec05cd0ff1da/node_modules/grunt-include-source/node_modules/extendr/node_modules/typechecker node ./cyclic.js grunt-include-source@0.5.0 node_modules/grunt-include-source └── extendr@2.1.0 (typechecker@2.0.8) grunt-contrib-cssmin@0.12.2 node_modules/grunt-contrib-cssmin ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.5, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0) ├── maxmin@1.1.0 (figures@1.7.0, chalk@1.1.3, gzip-size@1.0.0, pretty-bytes@1.0.4) └── clean-css@3.4.28 (commander@2.8.1, source-map@0.4.4) grunt-concurrent@1.0.0 node_modules/grunt-concurrent ├── async@0.9.2 └── pad-stdio@1.0.0 (lpad@1.0.0) grunt-rev@0.1.0 node_modules/grunt-rev grunt-shell@1.1.2 node_modules/grunt-shell └── chalk@1.1.3 (escape-string-regexp@1.0.5, supports-color@2.0.0, ansi-styles@2.2.1, has-ansi@2.0.0, strip-ansi@3.0.1) grunt-text-replace@0.4.0 node_modules/grunt-text-replace grunt-env@0.4.4 node_modules/grunt-env ├── ini@1.3.4 └── lodash@2.4.2 lodash@3.3.1 node_modules/lodash npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue grunt-angular-templates@0.5.7 node_modules/grunt-angular-templates └── html-minifier@0.6.9 (relateurl@0.2.7, change-case@2.1.6, clean-css@2.2.23, cli@0.6.6, uglify-js@2.4.24) grunt-include-replace@3.0.0 node_modules/grunt-include-replace grunt-contrib-copy@1.0.0 node_modules/grunt-contrib-copy ├── file-sync-cmp@0.1.1 └── chalk@1.1.3 (ansi-styles@2.2.1, escape-string-regexp@1.0.5, supports-color@2.0.0, has-ansi@2.0.0, strip-ansi@3.0.1) -----> Running run_grunt -----> Running grunt with production settings bin/run_grunt: line 5: grunt: command not found ! Push rejected, failed to compile Python app. ! Push failed

dmathieu commented 6 years ago

This looks like an issue with the python buildpack rather than due to the purge cache command. cc @kennethreitz