The Next Generation Platform is Coming - Get Ready Now!

heroku-buildpack-cachesave

by bullet-train-co

GitHub Readme.md

Note: We've forked this buildpack to help mitigate the risk of a supply chain attack where applications can become compromised via the compromised repo of a third-party buildpack. You should also consider forking this repo and linking to your own copy of it for the same reason.

Big thanks to Jan Žák and the other contributors for making this available to everyone and improving it over time!


heroku-buildpack-cachesave

Copy files to cache. Paths are read from .buildcache file in your project source code.

You should use this, if your project is pulling a lot of dependencies during each build. If you store them into cache and during build you just check if they haven't changed, your build time will reduce dramatically.

Usage example

$ heroku config:add BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi.git

.buildpacks:

https://github.com/heroku/heroku-buildpack-nodejs
https://github.com/zakjan/heroku-buildpack-cacheload#1.0.1
https://github.com/kr/heroku-buildpack-inline
https://github.com/zakjan/heroku-buildpack-cachesave#1.0.1

.buildcache:

code/server/node_modules
code/client/node_modules
code/client/bower_components

Troubleshooting

How to clear the cache?

Use heroku-repo plugin.

$ heroku plugins:install https://github.com/heroku/heroku-repo.git
$ heroku repo:purge_cache -a appname