Add as a first buildpack in the chain. Set PROJECT_PATH
environment variable to point to project root. It will be promoted to slug's root, everything else will be erased. Following buildpack (e.g. nodejs) will finish slug compilation.
ADDED: It'll REMOVE your yarn dependencies (yarn.lock) if npm dependencies file also exists (package-lock.json).
Disclaimer: I may change the code without notice, so always pin to specific github version. Provided as is.
heroku buildpacks:clear
if necessaryheroku buildpacks:set https://github.com/timanovsky/subdir-heroku-buildpack
heroku buildpacks:add heroku/nodejs
or whatever buildpack you need for your applicationheroku config:set PROJECT_PATH=projects/nodejs/frontend
pointing to what you want to be a project root.- Deploy your project to Heroku.
The buildpack takes subdirectory you configured, erases everything else, and copies that subdirectory to project root. Then normal Heroku slug compilation proceeds. It REMOVES yarn.lock if package-lock.json also exists.