3
3
const yaml = require ( 'js-yaml' )
4
4
const ejs = require ( 'ejs' )
5
5
const fs = require ( 'fs' )
6
+ const fsPromises = require ( 'fs/promises' )
6
7
const path = require ( 'path' )
7
8
8
9
const parseArgs = require ( 'minimist' )
@@ -132,7 +133,7 @@ const createApp = async (destDir, { lang, overwrite }) => {
132
133
)
133
134
134
135
const fsFlags = overwrite ? 'w' : 'wx'
135
- await fs . writeFile ( resultFile , resultedCode , { 'flag' : fsFlags } , fileExistsHandler )
136
+ return fsPromises . writeFile ( resultFile , resultedCode , { 'flag' : fsFlags } ) . catch ( fileExistsHandler )
136
137
}
137
138
138
139
const createDb = async ( destDir , { lang, overwrite } ) => {
@@ -143,8 +144,8 @@ const createDb = async (destDir, { lang, overwrite }) => {
143
144
console . log ( 'Generate' , fileName )
144
145
const resultFile = path . join ( destDir , fileName )
145
146
146
- const mode = overwrite ? 0 : fs . constants . COPYFILE_EXCL
147
- await fs . copyFile ( `${ __dirname } /templates/${ fileName } ` , resultFile , mode , fileExistsHandler )
147
+ const mode = overwrite ? 0 : fsPromises . constants . COPYFILE_EXCL
148
+ return fsPromises . copyFile ( `${ __dirname } /templates/${ fileName } ` , resultFile , mode ) . catch ( fileExistsHandler )
148
149
}
149
150
150
151
// "-- comment\nSELECT * FROM foo" => "SELECT * FROM foo"
@@ -306,7 +307,7 @@ const createEndpoints = async (destDir, { lang, overwrite }, config) => {
306
307
)
307
308
308
309
const fsFlags = overwrite ? 'w' : 'wx'
309
- await fs . writeFile ( resultFile , resultedCode , { 'flag' : fsFlags } , fileExistsHandler )
310
+ return fsPromises . writeFile ( resultFile , resultedCode , { 'flag' : fsFlags } ) . catch ( fileExistsHandler )
310
311
}
311
312
312
313
const createDependenciesDescriptor = async ( destDir , { lang, overwrite } ) => {
@@ -342,7 +343,7 @@ const createDependenciesDescriptor = async (destDir, { lang, overwrite }) => {
342
343
)
343
344
344
345
const fsFlags = overwrite ? 'w' : 'wx'
345
- await fs . writeFile ( resultFile , minimalPackageJson , { 'flag' : fsFlags } , fileExistsHandler )
346
+ return fsPromises . writeFile ( resultFile , minimalPackageJson , { 'flag' : fsFlags } ) . catch ( fileExistsHandler )
346
347
}
347
348
348
349
const showInstructions = ( lang ) => {
@@ -378,7 +379,7 @@ const absolutePathToDestDir = (argv) => {
378
379
return path . resolve ( process . cwd ( ) , relativeDestDir )
379
380
}
380
381
381
- const main = ( argv ) => {
382
+ const main = async ( argv ) => {
382
383
const config = loadConfig ( endpointsFile )
383
384
384
385
const destDir = absolutePathToDestDir ( argv )
@@ -389,10 +390,10 @@ const main = (argv) => {
389
390
fs . mkdirSync ( destDir , { recursive : true } )
390
391
}
391
392
392
- createApp ( destDir , argv )
393
- createDb ( destDir , argv )
394
- createEndpoints ( destDir , argv , config )
395
- createDependenciesDescriptor ( destDir , argv )
393
+ await createApp ( destDir , argv )
394
+ await createDb ( destDir , argv )
395
+ await createEndpoints ( destDir , argv , config )
396
+ await createDependenciesDescriptor ( destDir , argv )
396
397
showInstructions ( argv . lang )
397
398
}
398
399
0 commit comments