Wednesday, January 10, 2018

Heroku Ruby / Rails Cache Webpack + Yarn Between Deploys

Leave a Comment

I currently have a brand new ruby / rails app setup with webpacker. Every deploy to Heroku takes an additional 30+ seconds to re-install the yarn dependencies (runs yarn install).

remote:        [1/4] Resolving packages... remote:        [2/4] Fetching packages... remote:        info fsevents@1.1.3: The platform "linux" is incompatible with this module. remote:        info "fsevents@1.1.3" is an optional dependency and failed compatibility check. Excluding it from installation. remote:        [3/4] Linking dependencies... remote:        warning "babel-loader@7.1.2" has incorrect peer dependency "babel-core@6 || 7 || ^7.0.0-alpha || ^7.0.0-beta || ^7.0.0-rc". remote:        warning "babel-loader@7.1.2" has incorrect peer dependency "webpack@2 || 3". remote:        warning "compression-webpack-plugin@1.1.2" has incorrect peer dependency "webpack@^2.0.0 || ^3.0.0". remote:        warning "extract-text-webpack-plugin@3.0.2" has incorrect peer dependency "webpack@^3.1.0". remote:        warning "file-loader@1.1.5" has incorrect peer dependency "webpack@^2.0.0 || ^3.0.0". remote:        warning "postcss-cssnext@3.0.2" has incorrect peer dependency "caniuse-lite@^1.0.30000697". remote:        warning "rails-erb-loader@5.2.1" has incorrect peer dependency "webpack@^2.0.0 || >= 3.0.0-rc.0 || ^3.0.0". remote:        warning "sass-loader@6.0.6" has incorrect peer dependency "node-sass@^4.0.0". remote:        warning "sass-loader@6.0.6" has incorrect peer dependency "webpack@^2.0.0 || >= 3.0.0-rc.0 || ^3.0.0". remote:        warning "url-loader@0.6.2" has incorrect peer dependency "file-loader@*". remote:        warning "webpack-manifest-plugin@1.3.2" has incorrect peer dependency "webpack@1 || 2 || 3". remote:        warning "ajv-keywords@2.1.1" has incorrect peer dependency "ajv@^5.0.0". remote:        warning "uglifyjs-webpack-plugin@0.4.6" has incorrect peer dependency "webpack@^1.9 || ^2 || ^2.1.0-beta || ^2.2.0-rc || ^3.0.0". remote:        warning "babel-plugin-transform-vue-jsx@3.5.0" has incorrect peer dependency "babel-helper-vue-jsx-merge-props@^2.0.0". remote:        warning "babel-plugin-transform-vue-jsx@3.5.0" has incorrect peer dependency "babel-plugin-syntax-jsx@^6.8.0". remote:        warning "vue-loader@13.5.0" has incorrect peer dependency "css-loader@*". remote:        warning "webpack-dev-server@2.9.7" has incorrect peer dependency "webpack@^2.2.0 || ^3.0.0". remote:        warning "webpack-dev-middleware@1.12.2" has incorrect peer dependency "webpack@^1.0.0 || ^2.0.0 || ^3.0.0". remote:        [4/4] Building fresh packages... remote:        Done in 33.50s. remote:        Webpacker is installed 🎉 🍰 

I'm currently using the heroku/ruby buildpack on the heroku-16 stack. Any easy way to get the caching to work like it does for bundler?

1 Answers

Answers 1

Maybe you can add a second nodejs buildpack in addition to your heroku stack:

heroku buildpacks:add --index 1 heroku/nodejs 

The nodejs buildpack should support yarn caching as described here.

If You Enjoyed This, Take 5 Seconds To Share It

0 comments:

Post a Comment