Automates resource versioning based on the MD5 hash of referenced files (works on CSS, HTML, SOYs)
Grunt plugin for automating resource versioning based on the MD5 hash of referenced files (works on CSS, HTML, SOYs)
Install this grunt plugin next to your project's gruntfile with:
npm install grunt-rev-md5
Then add this line to your project's
Then specify your config:
gruntinitConfigrevmd5:options:/** @required - base file system path for your resources (which MD5 will be calculated) */relativePath: './'/** @optional - when provided if a resource isn't found will fail with a warning */safe: true/** @optional - let you define extentions and the file types (html or css). If not provided, a default set of types will be used. */supportedTypes :'jsp' : 'html'dist:/** @required - string (or array of) including grunt glob variables */src: './static/*.html' './static/*.css' './static/*.soy'/** @optional - if provided a copy will be stored without modifying original file */dest: './dist/static/';
There are two types of path resolution that this task do: relative and absolute.
styles.csswhich is stored on
/static/home/cssin this way:
In this case our grunt task will go to css path and combine its path (the css) with the relative path resulting in `/static/home/image1.png'. This looks as the most comprehensive behavior in this case.
styles.cssand you've set the
In this case our grunt task will go to the
relativePath and combine it with the resource path
resulting in `./public/static/images/image2.png'.
NOTE: We consider paths starting with . (or ..) as relative, and with / absolute. We're using the same aproach as the *NIX file-system.