--- a/client/gruntfile.js Wed Sep 09 18:37:15 2015 +0200
+++ b/client/gruntfile.js Thu Sep 10 00:35:59 2015 +0200
@@ -251,7 +251,48 @@
}
}
}
- }
+ },
+ replace: {
+ 'version-bower-package': {
+ src: ['package.json', 'bower.json'],
+ overwrite: true,
+ replacements: [{
+ from: /^(\s+)\"version\"\:\s*\"([\d\.]+)\"\,[ \t]*$/m,
+ to: "$1\"version\"\: \"<%= setversion.version %>\",",
+ }]
+ },
+ 'version-gradle': {
+ src: ['../server/java/build.gradle'],
+ overwrite: true,
+ replacements: [{
+ from: /^(\s+)version\s*\=\s*\'([\d\.]+)\'[ \t]*$/m,
+ to: "$1version = \'<%= setversion.version %>\'",
+ }]
+ },
+ 'version-maven': {
+ src: ['../server/java/pom.xml'],
+ overwrite: true,
+ replacements: [{
+ from: /^(\s+)<version>\s*([\d\.]+)\s*<\/version>[ \t]*$/m,
+ to: "$1<version><%= setversion.version %></version>",
+ }]
+ },
+ 'version-django': {
+ src: ['../server/python/django/renkanmanager/__init__.py'],
+ overwrite: true,
+ replacements: [{
+ from: /^(\s*)VERSION\s*=\s*\([ \t]*\d+[ \t]*,[ \t]*\d+[ \t]*,[ \t]*\d+[ \t]*,[ \t]*\"final\"[ \t]*\,[ \t]*0[ \t]*\)[ \t]*$/m,
+ to: function(matchedWord, index, fullText, regexMatches) {
+ var array_version = grunt.config.get('setversion.version').split('.');
+ var array_version_length = array_version.length;
+ for(let i=0;i<3-array_version_length;i++) {
+ array_version.push('0');
+ }
+ return regexMatches[0]+"VERSION = (" + array_version.join(', ') + ", \"final\", 0)";
+ },
+ }]
+ },
+ },
});
// Load the plugins.
@@ -267,6 +308,7 @@
grunt.loadNpmTasks('grunt-contrib-jst');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-umd');
+ grunt.loadNpmTasks('grunt-text-replace');
// Default task(s).
grunt.registerTask('base', [
@@ -290,6 +332,10 @@
grunt.task.run(['copy:renkan_server']);
});
grunt.registerTask('dev', ['base', 'connect:server', 'watch']);
+ grunt.registerTask('set-version', function(version) {
+ grunt.config.set('setversion.version', version);
+ grunt.task.run(['replace:version-bower-package', 'replace:version-gradle', 'replace:version-maven', 'replace:version-django']);
+ });
};