File tree Expand file tree Collapse file tree 1 file changed +23
-5
lines changed
src/load-config/load-template-config Expand file tree Collapse file tree 1 file changed +23
-5
lines changed Original file line number Diff line number Diff line change @@ -2,11 +2,8 @@ const { exec } = require('child_process');
22const log = require ( '../../utils/log' )
33
44
5- module . exports = hooks => name => new Promise ( ( resolve , reject ) => {
6- if ( typeof hooks [ name ] !== 'string' ) return resolve ( )
7- log . info ( `run ${ name } hook...` )
8-
9- exec ( hooks [ name ] , ( error , stdout , stderr ) => {
5+ const execCommand = command => new Promise ( resolve => {
6+ exec ( command , ( error , stdout , stderr ) => {
107 if ( error ) {
118 log . error ( 'hook exec error' , error ) ;
129 return resolve ( )
@@ -18,3 +15,24 @@ module.exports = hooks => name => new Promise((resolve, reject) => {
1815 resolve ( )
1916 } ) ;
2017} )
18+
19+ const execFunction = async func => {
20+ try {
21+ await func ( )
22+ } catch ( error ) {
23+ log . error ( 'hook exec error' , error )
24+ }
25+ }
26+
27+ module . exports = hooks => async name => {
28+ switch ( typeof hooks [ name ] ) {
29+ case 'string' :
30+ log . info ( `run ${ name } hook...` )
31+ await execCommand ( hooks [ name ] )
32+ break
33+ case 'function' :
34+ log . info ( `run ${ name } hook...` )
35+ await execFunction ( hooks [ name ] )
36+ break
37+ }
38+ }
You can’t perform that action at this time.
0 commit comments