@@ -3,7 +3,7 @@ const { join, sep, resolve } = require('node:path')
33const os = require ( 'os' )
44const { mkdirSync, readFile } = require ( 'fs' )
55const { cwd, chdir, exit, platform } = require ( 'node:process' )
6- const { existsSync, statSync, readdirSync, writeFileSync, readFileSync } = require ( 'node:fs' ) ;
6+ const { existsSync, statSync, readdirSync, writeFileSync, readFileSync, rmSync } = require ( 'node:fs' ) ;
77let { exec, spawn } = require ( 'node:child_process' ) ;
88const { writeFile } = require ( 'node:fs/promises' ) ;
99const assets = require ( './assets' )
@@ -1117,14 +1117,17 @@ const injectService = async ({ project_root, answers, workspace_name }) => {
11171117 // Generate mcs service using helper function
11181118 generateMCSHelper ( { project_root, answers : { ...answers , project_base : workspace_name } } ) ;
11191119
1120+ // add license to package.json
1121+ const { license } = readFileContent ( { currentDir : cwd ( ) } )
1122+
11201123 // Create service directory
11211124 const service_path = join ( project_root , 'microservices' , answers . service_name ) ;
11221125 await mkdirSync ( service_path , { recursive : true } ) ;
11231126
11241127 // Create package.json for the service
11251128 const packageJsonContent = assets . genericPackageJsonContent ( {
11261129 addDeps : true ,
1127- answers : { ...answers , project_base : workspace_name } ,
1130+ answers : { ...answers , project_base : workspace_name , license } ,
11281131 suffix : `${ answers . service_name } ` ,
11291132 isMicroservice : true ,
11301133 os,
@@ -1190,6 +1193,7 @@ const generateMCSHelper = ({ project_root, answers }) => {
11901193 } ) ;
11911194 writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , 'index.js' ) , assets . serverContent ( { answers } ) ) ;
11921195 writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , '.env' ) , assets . envContent ( { answers } ) ) ;
1196+ writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , '.dockerignore' ) , assets . dockerIgnoreContent ( ) ) ;
11931197 writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , '.env.dev' ) , assets . envContent ( { answers } ) ) ;
11941198 writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , 'Dockerfile.dev' ) , assets . dockerfileContent ( ) ) ;
11951199 writeFile ( join ( `${ project_root } /microservices/${ answers . service_name } ` , 'ecosystem.config.js' ) , assets . ecosystemContent ( { answers } ) ) ;
@@ -1269,11 +1273,13 @@ const retrieveWorkSpaceName = ({ package_json_path }) => {
12691273const scaffoldNewLibrary = async ( { answers } ) => {
12701274 const project_root = join ( cwd ( ) , 'shared' , answers . library_name ) ;
12711275 const package_json_path = join ( cwd ( ) , 'package.json' )
1276+ // add license to package.json
1277+ const { license } = readFileContent ( { currentDir : cwd ( ) } )
12721278 mkdirSync ( project_root , { recursive : true } ) ;
12731279 const { workspace_name } = retrieveWorkSpaceName ( { package_json_path } )
12741280 writeFile ( join ( `${ project_root } ` , 'package.json' ) , JSON . stringify ( assets . genericPackageJsonContent ( {
12751281 addDeps : false ,
1276- answers : { ...answers , project_base : workspace_name } ,
1282+ answers : { ...answers , project_base : workspace_name , license } ,
12771283 suffix : `${ answers . library_name } ` ,
12781284 isMicroservice : false ,
12791285 os,
@@ -1368,6 +1374,10 @@ const scaffoldApp = ({ answers }) => {
13681374 const app_directory = join ( project_root , 'gateways/apps' , answers . app_name )
13691375 const webserver_dir = join ( app_directory , webserver )
13701376
1377+ // Remove the directory if it already exists
1378+ if ( existsSync ( app_directory ) ) {
1379+ rmSync ( app_directory , { recursive : true } ) ;
1380+ }
13711381 mkdirSync ( webserver_dir , { recursive : true } )
13721382 writeFileSync ( join ( app_directory , 'docker-compose.dev.yml' ) , assets . dockerComposeContent ( { services : answers . services , app_name : answers . app_name , webserver } ) ) ;
13731383 writeFileSync ( join ( app_directory , 'docker-compose.yml' ) , assets . dockerComposeContent ( { services : answers . services , app_name : answers . app_name , webserver } ) ) ;
0 commit comments