12345678910111213141516171819202122232425262728293031323334 |
- "use strict";
- var exec = require( "child_process" ).exec;
- module.exports = function( grunt ) {
- grunt.registerTask( "version", "Commit a new version", function( version ) {
- if ( !/\d\.\d+\.\d+/.test( version ) ) {
- grunt.fatal( "Version must follow semver release format: " + version );
- return;
- }
- var done = this.async(),
- files = grunt.config( "version.files" ),
- rversion = /("version":\s*")[^"]+/;
- // Update version in specified files
- files.forEach(function( filename ) {
- var text = grunt.file.read( filename );
- text = text.replace( rversion, "$1" + version );
- grunt.file.write( filename, text );
- });
- // Add files to git index
- exec( "git add -A", function( err ) {
- if ( err ) {
- grunt.fatal( err );
- return;
- }
- // Commit next pre version
- grunt.config( "pkg.version", version );
- grunt.task.run([ "build", "bower", "test", "commit:'Update version to " + version + "'" ]);
- done();
- });
- });
- };
|