1
1
var path = require ( 'path' ) ;
2
2
var pkg = require ( path . resolve ( __dirname , '../package.json' ) ) ;
3
3
var fs = require ( 'fs' ) ;
4
+ var cp = require ( 'child_process' ) ;
5
+ var format = require ( 'util' ) . format ;
4
6
5
7
var debug = require ( 'debug' ) ( 'scout:tasks:darwin' ) ;
6
8
@@ -11,8 +13,6 @@ var APP_PATH = path.join(PACKAGE, NAME + '.app');
11
13
var packager = require ( 'electron-packager' ) ;
12
14
var createDMG = require ( 'electron-installer-dmg' ) ;
13
15
14
- var spawn = require ( 'child_process' ) . spawn ;
15
-
16
16
var CONFIG = module . exports = {
17
17
name : pkg . electron . name ,
18
18
dir : path . resolve ( __dirname , '../build' ) ,
@@ -51,13 +51,33 @@ module.exports.build = function(done) {
51
51
} ) ;
52
52
} ;
53
53
54
+ var codesign = function ( done ) {
55
+ var cmd = 'codesign --deep --force --sign "' + CONFIG . sign + '" "' + CONFIG . appPath + '"' ;
56
+ debug ( 'Running' , cmd ) ;
57
+ cp . exec ( cmd , done ) ;
58
+ } ;
59
+
60
+ var verify = function ( done ) {
61
+ var cmd = 'codesign --verify "' + CONFIG . appPath + '"' ;
62
+ debug ( 'Running' , cmd ) ;
63
+ cp . exec ( cmd , done ) ;
64
+ } ;
65
+
54
66
module . exports . installer = function ( done ) {
55
- createDMG ( CONFIG , done ) ;
67
+ codesign ( function ( err ) {
68
+ if ( err ) return done ( err ) ;
69
+
70
+ verify ( function ( err ) {
71
+ if ( err ) return done ( err ) ;
72
+
73
+ createDMG ( CONFIG , done ) ;
74
+ } ) ;
75
+ } ) ;
56
76
} ;
57
77
58
78
59
79
module . exports . start = function ( ) {
60
- var child = spawn ( path . resolve ( CONFIG . ELECTRON ) , [ path . resolve ( CONFIG . dir ) ] ) ;
80
+ var child = cp . spawn ( path . resolve ( CONFIG . ELECTRON ) , [ path . resolve ( CONFIG . dir ) ] ) ;
61
81
child . stderr . pipe ( process . stderr ) ;
62
82
child . stdout . pipe ( process . stdout ) ;
63
83
} ;
0 commit comments