1
1
var fs = require ( 'fs' ) ;
2
2
var gulp = require ( 'gulp' ) ;
3
3
var slug = require ( 'slug' ) ;
4
- var inquirer = require ( 'inquirer' ) ;
5
4
var rename = require ( 'gulp-rename' ) ;
6
5
var replace = require ( 'gulp-replace' ) ;
7
6
7
+ // change to dynamic import.
8
+ var inquirer ;
9
+
8
10
var cwd = process . cwd ( ) ;
9
11
var isProduction = process . env . IS_PRODUCTION ;
10
12
@@ -26,33 +28,6 @@ var questions = info.map(function (info) {
26
28
return info ;
27
29
} ) ;
28
30
29
- gulp . task ( 'config:settings' , function ( ) {
30
- if ( isProduction ) {
31
- return gulp . src ( 'src/cnf/settings.local.base.php' )
32
- . pipe ( replace ( '%SETTINGS_DATABASE_NAME%' , process . env . DB_NAME ) )
33
- . pipe ( replace ( '%SETTINGS_DATABASE_USERNAME%' , process . env . DB_USERNAME ) )
34
- . pipe ( replace ( '%SETTINGS_DATABASE_PASSWORD%' , process . env . DB_PASSWORD ) )
35
- . pipe ( replace ( '%SETTINGS_DATABASE_HOST%' , process . env . DB_HOST ) )
36
- . pipe ( replace ( '%SETTINGS_DATABASE_PORT%' , process . env . DB_PORT ) )
37
- . pipe ( replace ( '%SETTINGS_DATABASE_DRIVER%' , process . env . DB_DRIVER ) )
38
- . pipe ( replace ( '%SETTINGS_DATABASE_PREFIX%' , '' ) )
39
- . pipe ( rename ( 'settings.local.php' ) )
40
- . pipe ( gulp . dest ( 'cnf' ) ) ;
41
- }
42
- return inquirer . prompt ( questions ) . then ( function ( answers ) {
43
- return gulp . src ( 'src/cnf/settings.local.base.php' )
44
- . pipe ( replace ( '%SETTINGS_DATABASE_NAME%' , answers . name ) )
45
- . pipe ( replace ( '%SETTINGS_DATABASE_USERNAME%' , answers . username ) )
46
- . pipe ( replace ( '%SETTINGS_DATABASE_PASSWORD%' , answers . password ) )
47
- . pipe ( replace ( '%SETTINGS_DATABASE_HOST%' , answers . host ) )
48
- . pipe ( replace ( '%SETTINGS_DATABASE_PORT%' , answers . port ) )
49
- . pipe ( replace ( '%SETTINGS_DATABASE_DRIVER%' , answers . driver ) )
50
- . pipe ( replace ( '%SETTINGS_DATABASE_PREFIX%' , answers . prefix ) )
51
- . pipe ( rename ( 'settings.local.php' ) )
52
- . pipe ( gulp . dest ( 'cnf' ) ) ;
53
- } ) ;
54
- } ) ;
55
-
56
31
var validateMap = {
57
32
'empty' : [ 'name' , 'username' , 'host' , 'driver' ] ,
58
33
'slug' : [ 'name' , 'username' , 'port' , 'driver' , 'prefix' ]
@@ -79,5 +54,37 @@ function validation(value) {
79
54
return info . name + ' cannot have invalid characters' ;
80
55
}
81
56
82
- return true
57
+ return true ;
83
58
}
59
+
60
+ async function configSettings ( done ) {
61
+ if ( isProduction ) {
62
+ return gulp . src ( 'src/cnf/settings.local.base.php' )
63
+ . pipe ( replace ( '%SETTINGS_DATABASE_NAME%' , process . env . DB_NAME ) )
64
+ . pipe ( replace ( '%SETTINGS_DATABASE_USERNAME%' , process . env . DB_USERNAME ) )
65
+ . pipe ( replace ( '%SETTINGS_DATABASE_PASSWORD%' , process . env . DB_PASSWORD ) )
66
+ . pipe ( replace ( '%SETTINGS_DATABASE_HOST%' , process . env . DB_HOST ) )
67
+ . pipe ( replace ( '%SETTINGS_DATABASE_PORT%' , process . env . DB_PORT ) )
68
+ . pipe ( replace ( '%SETTINGS_DATABASE_DRIVER%' , process . env . DB_DRIVER ) )
69
+ . pipe ( replace ( '%SETTINGS_DATABASE_PREFIX%' , '' ) )
70
+ . pipe ( rename ( 'settings.local.php' ) )
71
+ . pipe ( gulp . dest ( 'cnf' ) ) ;
72
+ }
73
+ if ( ! inquirer ) {
74
+ inquirer = ( await import ( 'inquirer' ) . default ) ;
75
+ }
76
+ return inquirer . prompt ( questions ) . then ( function ( answers ) {
77
+ return gulp . src ( 'src/cnf/settings.local.base.php' )
78
+ . pipe ( replace ( '%SETTINGS_DATABASE_NAME%' , answers . name ) )
79
+ . pipe ( replace ( '%SETTINGS_DATABASE_USERNAME%' , answers . username ) )
80
+ . pipe ( replace ( '%SETTINGS_DATABASE_PASSWORD%' , answers . password ) )
81
+ . pipe ( replace ( '%SETTINGS_DATABASE_HOST%' , answers . host ) )
82
+ . pipe ( replace ( '%SETTINGS_DATABASE_PORT%' , answers . port ) )
83
+ . pipe ( replace ( '%SETTINGS_DATABASE_DRIVER%' , answers . driver ) )
84
+ . pipe ( replace ( '%SETTINGS_DATABASE_PREFIX%' , answers . prefix ) )
85
+ . pipe ( rename ( 'settings.local.php' ) )
86
+ . pipe ( gulp . dest ( 'cnf' ) ) ;
87
+ } ) ;
88
+ }
89
+
90
+ exports . configSettings = configSettings ;
0 commit comments