@@ -9,7 +9,10 @@ module.exports = function(grunt) {
99 grunt . loadTasks ( 'tasks' ) ;
1010 }
1111
12+ grunt . loadNpmTasks ( 'grunt-contrib-clean' ) ;
1213 grunt . loadNpmTasks ( 'grunt-contrib-jshint' ) ;
14+ grunt . loadNpmTasks ( 'grunt-exec' ) ;
15+ grunt . loadNpmTasks ( 'grunt-github-releaser' ) ;
1316 grunt . loadNpmTasks ( 'grunt-node-webkit-builder' ) ;
1417
1518 grunt . initConfig ( {
@@ -29,16 +32,94 @@ module.exports = function(grunt) {
2932 src : [
3033 './**/*' ,
3134 '!./test/**' ,
32- '!./node_modules/**' ,
35+ '!./node_modules/grunt-*/**' ,
36+ '!./node_modules/grunt/**' ,
37+ '!./node_modules/karma-*/**' ,
38+ '!./node_modules/karma/**' ,
39+ '!./node_modules/nodewebkit/**' ,
40+ '!./node_modules/protractor/**' ,
3341 '!./test_out/**' ,
3442 '!./cache/**'
3543 ]
3644 } ,
45+ clean : {
46+ build : [ 'build/' ] ,
47+ } ,
48+ exec : {
49+ build_osx64_release : {
50+ command : "./scripts/build_osx64.sh" ,
51+ cwd : './' ,
52+ stdout : true ,
53+ stderr : true
54+ } ,
55+ build_linux64_release : {
56+ command : "./scripts/build_linux64.sh" ,
57+ cwd : './' ,
58+ stdout : true ,
59+ stderr : true
60+ } ,
61+ build_win64_release : {
62+ command : "./scripts/build_win64.sh" ,
63+ cwd : './' ,
64+ stdout : true ,
65+ stderr : true
66+ }
67+ } ,
68+ "github-release" : {
69+ options : {
70+ repository : 'Dineshs91/devlog' ,
71+ auth : {
72+ user : 'Dineshs91' ,
73+ password : ''
74+ } ,
75+ release : {
76+ tag_name : pkg . version ,
77+ name : pkg . version ,
78+ draft : true ,
79+ prerelease : false
80+ }
81+ } ,
82+ files : {
83+ src : [
84+ "./build/devlog-linux64.tar.gz" ,
85+ "./build/devlog-osx64.dmg" ,
86+ "./build/devlog-win64.zip"
87+ ] ,
88+ } ,
89+ }
3790 } ) ;
3891
3992 grunt . registerTask ( 'setup' , [
4093 'e2e-setup'
4194 ] ) ;
4295
43- grunt . registerTask ( 'default' , [ 'nodewebkit' ] ) ;
96+ grunt . registerTask ( 'default' , [
97+ 'clean:build' ,
98+ 'nodewebkit'
99+ ] ) ;
100+
101+ // Release tasks
102+ grunt . registerTask ( 'build-osx64' , [
103+ 'exec:build_osx64_release'
104+ ] ) ;
105+
106+ grunt . registerTask ( 'build-linux32' , [
107+ 'exec:build_linux64_release'
108+ ] ) ;
109+
110+ grunt . registerTask ( 'build-win64' , [
111+ 'exec:build_win64_release'
112+ ] ) ;
113+
114+ grunt . registerTask ( 'build-all' , [
115+ 'default' ,
116+ 'exec:build_osx64_release' ,
117+ 'exec:build_linux64_release' ,
118+ 'exec:build_win64_release'
119+ ] ) ;
120+
121+ grunt . registerTask ( 'publish' , [
122+ 'build-all' ,
123+ 'github-release'
124+ ] ) ;
44125}
0 commit comments