vigetlabs / blendid

A delicious blend of gulp tasks combined into a configurable asset pipeline and static site builder
MIT License
4.97k stars 680 forks source link

Add an additional `webroot` path setting, used by the rev tasks #452

Open elivz opened 7 years ago

elivz commented 7 years ago

For my use case of copying template files to a location outside of the public webroot using the html task, I needed a way of adjusting the asset URIs that the rev tasks generate – for example if dest is ./dist and stylesheets.dest is public/assets/css, I would end up with an entry in rev-manifest.json like "public/assets/css/site.css": "public/assets/css/site-1234567890.css", which obviously wouldn't match against the actual asset URL in my markup.

What I did was add an additional webroot option to path-config.json. If that is set, it is considered the base path of the final URIs that are stored in rev-manifest.json. Using my example above, I would set "webroot": "public" and end up with "assets/css/site.css": "assets/css/site-1234567890.css".

I went back and forth a few times on what to call that new setting (assetsRoot, rootPath....), so feel free to rename it to whatever you feel is most appropriate if you decide to accept this PR.

elivz commented 6 years ago

Sorry about that! I went back and forth a couple times on what to name that config option. Just pushed an update making it webroot everywhere.