From 101bbf2bd50a37abea91bc916d55d06489cbd3fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Granstr=C3=B6m?= Date: Thu, 15 Oct 2015 13:16:47 +0200 Subject: [PATCH] Added the dist directory to gitignore. Added the grunt-release-it plugin for creating github releases, and a task that creates the release asset(s) for upload to github. --- .gitignore | 1 + Gruntfile.js | 28 ++++++++++++++++++++++++++++ package.json | 2 ++ 3 files changed, 31 insertions(+) diff --git a/.gitignore b/.gitignore index 63fe69f..638ad77 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules/ coverage/ +dist/ .project diff --git a/Gruntfile.js b/Gruntfile.js index 567ec9f..3d4439d 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -92,6 +92,25 @@ module.exports = function(grunt) { amdUri: webpackCfg('amd', 'spid-uri', 'SPiD_Uri'), commonJsSdk: webpackCfg('commonjs2', 'spid-sdk', 'SPiD'), commonJsUri: webpackCfg('commonjs2', 'spid-uri', 'SPiD_Uri') + }, + compress: { + main: { + options: { + archive: 'dist/spid-sdk-<%= pkg.version %>.zip' + }, + files: [{ + cwd: 'dist/', + src: ['*.js'], + expand: true + } + ] + } + }, + "release-it": { + options: { + pkgFiles: ['package.json', 'bower.json'], + increment: '<%= pkg.version %>' + } } }); @@ -101,7 +120,16 @@ module.exports = function(grunt) { grunt.loadNpmTasks('grunt-contrib-jshint'); grunt.loadNpmTasks('grunt-karma'); grunt.loadNpmTasks('grunt-template'); + grunt.loadNpmTasks('grunt-release-it'); + grunt.loadNpmTasks('grunt-contrib-compress'); // Default task. grunt.registerTask('default', ['jshint:sdk', 'webpack', 'template', 'uglify']); grunt.registerTask('test', ['karma:unit']); + // Release related + grunt.registerTask('post-release', function() { + grunt.log.subhead("Release created"); + grunt.log.ok("NOTE: You'll have to upload the archive zip to the GitHub release yourself!"); + }); + grunt.registerTask('release', ['uglify','compress','release-it', 'post-release']); + }; diff --git a/package.json b/package.json index 4762770..e27472a 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,8 @@ "grunt": "~0.4.2", "grunt-contrib-jshint": "~0.8.0", "grunt-contrib-uglify": "~0.3.2", + "grunt-contrib-compress": "~0.13.0", + "grunt-release-it": "~1.0.0", "grunt-template": "~0.2.3", "grunt-webpack": "~1.0.3", "karma": "^0.13.9",