@hed-hog/cli 0.0.93 → 0.0.95
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +1 -1
- package/dist/src/commands/new.command.d.ts +6 -0
- package/dist/src/commands/new.command.js +198 -93
- package/dist/src/commands/new.command.js.map +1 -1
- package/dist/src/modules/database/database.service.d.ts +8 -0
- package/dist/src/modules/database/database.service.js +120 -0
- package/dist/src/modules/database/database.service.js.map +1 -1
- package/dist/src/modules/developer/developer.service.js +6 -7
- package/dist/src/modules/developer/developer.service.js.map +1 -1
- package/dist/src/modules/hedhog/services/migration.service.d.ts +1 -0
- package/dist/src/modules/hedhog/services/migration.service.js +18 -4
- package/dist/src/modules/hedhog/services/migration.service.js.map +1 -1
- package/dist/src/modules/hedhog/services/table.service.js +19 -13
- package/dist/src/modules/hedhog/services/table.service.js.map +1 -1
- package/dist/src/templates/deployment/DEPLOYMENT.md.ejs +0 -9
- package/dist/src/templates/deployment/k8s.deployment.yaml.ejs +0 -20
- package/dist/src/templates/deployment/workflow.deploy.yml.ejs +22 -47
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
package/dist/package.json
CHANGED
|
@@ -29,6 +29,12 @@ export declare class NewCommand extends CommandRunner {
|
|
|
29
29
|
constructor(inquirer: InquirerService, hedhog: HedHogService, git: GitService, runner: RunnerService, database: DatabaseService, developer: DeveloperService, packageService: PackageService);
|
|
30
30
|
log(...args: any[]): Promise<void>;
|
|
31
31
|
run([name]: string[], { verbose, overwrite, dbHost, dbName, dbPassword, dbPort, dbType, dbUser, skipInstall, }: Options): Promise<void>;
|
|
32
|
+
private writeDatabaseDockerCompose;
|
|
33
|
+
private waitForDatabaseConnection;
|
|
34
|
+
private handleExistingDatabaseState;
|
|
35
|
+
private promptForExistingDatabaseAction;
|
|
36
|
+
private confirmDangerousDatabaseCleanup;
|
|
37
|
+
private recreateProjectDatabaseContainer;
|
|
32
38
|
parseSkipINstall(): boolean;
|
|
33
39
|
parseVerbose(): boolean;
|
|
34
40
|
parseOverwrite(): boolean;
|
|
@@ -10,8 +10,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.NewCommand = void 0;
|
|
13
|
+
const chalk = require("chalk");
|
|
13
14
|
const crypto_1 = require("crypto");
|
|
14
15
|
const promises_1 = require("fs/promises");
|
|
16
|
+
const inquirer_1 = require("inquirer");
|
|
15
17
|
const nest_commander_1 = require("nest-commander");
|
|
16
18
|
const ora = require("ora");
|
|
17
19
|
const path_1 = require("path");
|
|
@@ -124,79 +126,18 @@ let NewCommand = class NewCommand extends nest_commander_1.CommandRunner {
|
|
|
124
126
|
spinner.succeed(`TypeScript configuration files updated for ${name}.`);
|
|
125
127
|
spinner.start(`Initializing Git repository for ${name}...`);
|
|
126
128
|
await this.git.init(destinationPath);
|
|
127
|
-
spinner.succeed(`
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
},
|
|
140
|
-
volumes: [
|
|
141
|
-
`hedhog-postgresql-${this.developer.toKebabCase(name)}:/var/lib/postgresql`,
|
|
142
|
-
],
|
|
143
|
-
ports: [`${dbPort}:5432`],
|
|
144
|
-
healthcheck: {
|
|
145
|
-
test: ['CMD-SHELL', 'pg_isready -U hedhog'],
|
|
146
|
-
interval: '10s',
|
|
147
|
-
timeout: '5s',
|
|
148
|
-
retries: 5,
|
|
149
|
-
},
|
|
150
|
-
deploy: {
|
|
151
|
-
resources: {
|
|
152
|
-
limits: {
|
|
153
|
-
cpus: '0.5',
|
|
154
|
-
memory: '1G',
|
|
155
|
-
},
|
|
156
|
-
},
|
|
157
|
-
},
|
|
158
|
-
},
|
|
159
|
-
},
|
|
160
|
-
volumes: {
|
|
161
|
-
[`hedhog-postgresql-${this.developer.toKebabCase(name)}`]: {},
|
|
162
|
-
},
|
|
163
|
-
});
|
|
164
|
-
spinner.succeed(`PostgreSQL database setup completed for ${name}.`);
|
|
165
|
-
}
|
|
166
|
-
else if (dbType === 'mysql') {
|
|
167
|
-
spinner.start(`Setting up MySQL database for ${name}...`);
|
|
168
|
-
await this.hedhog.createDockerComposeFile((0, path_1.join)(destinationPath, 'docker-compose.yaml'), {
|
|
169
|
-
services: {
|
|
170
|
-
mysql: {
|
|
171
|
-
image: 'mysql',
|
|
172
|
-
restart: 'always',
|
|
173
|
-
environment: {
|
|
174
|
-
MYSQL_ROOT_PASSWORD: dbPassword,
|
|
175
|
-
MYSQL_DATABASE: dbPassword,
|
|
176
|
-
MYSQL_USER: dbUser,
|
|
177
|
-
MYSQL_PASSWORD: dbPassword,
|
|
178
|
-
},
|
|
179
|
-
volumes: [
|
|
180
|
-
`hedhog-mysql-${this.developer.toKebabCase(name)}:/var/lib/mysql`,
|
|
181
|
-
],
|
|
182
|
-
ports: [`${dbPort}:3306`],
|
|
183
|
-
healthcheck: {
|
|
184
|
-
test: [
|
|
185
|
-
'CMD-SHELL',
|
|
186
|
-
'mysqladmin ping -h localhost -u root -proot',
|
|
187
|
-
],
|
|
188
|
-
interval: '10s',
|
|
189
|
-
timeout: '5s',
|
|
190
|
-
retries: 5,
|
|
191
|
-
},
|
|
192
|
-
},
|
|
193
|
-
},
|
|
194
|
-
volumes: {
|
|
195
|
-
[`hedhog-mysql-${this.developer.toKebabCase(name)}`]: {},
|
|
196
|
-
},
|
|
197
|
-
});
|
|
198
|
-
spinner.succeed(`MySQL database setup completed for ${name}.`);
|
|
199
|
-
}
|
|
129
|
+
spinner.succeed(`Git repository initialized for ${name}.`);
|
|
130
|
+
const projectDatabaseConfig = {
|
|
131
|
+
type: dbType === 'postgres' ? 'postgres' : 'mysql',
|
|
132
|
+
host: dbHost,
|
|
133
|
+
user: dbUser,
|
|
134
|
+
password: dbPassword,
|
|
135
|
+
database: dbName,
|
|
136
|
+
port: dbPort,
|
|
137
|
+
};
|
|
138
|
+
spinner.start(`Setting up ${dbType === 'postgres' ? 'PostgreSQL' : 'MySQL'} database for ${name}...`);
|
|
139
|
+
await this.writeDatabaseDockerCompose(destinationPath, name, projectDatabaseConfig);
|
|
140
|
+
spinner.succeed(`${dbType === 'postgres' ? 'PostgreSQL' : 'MySQL'} database setup completed for ${name}.`);
|
|
200
141
|
spinner.start(`Testing database connection for ${name}...`);
|
|
201
142
|
let dbConnected = await this.database.testConnection(dbType === 'postgres' ? 'postgres' : 'mysql', dbHost, dbUser, dbPassword, dbName, dbPort, true);
|
|
202
143
|
if (!dbConnected) {
|
|
@@ -210,26 +151,8 @@ let NewCommand = class NewCommand extends nest_commander_1.CommandRunner {
|
|
|
210
151
|
cwd: destinationPath,
|
|
211
152
|
}, true);
|
|
212
153
|
spinner.succeed(`Docker Compose started for ${name}.`);
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
const maxRetries = 30;
|
|
216
|
-
let retries = 0;
|
|
217
|
-
let isReady = false;
|
|
218
|
-
while (retries < maxRetries && !isReady) {
|
|
219
|
-
await new Promise((resolve) => setTimeout(resolve, 2000)); // Wait 2 seconds between retries
|
|
220
|
-
retries++;
|
|
221
|
-
isReady =
|
|
222
|
-
(await this.database.testConnection(dbType === 'postgres' ? 'postgres' : 'mysql', dbHost, dbUser, dbPassword, dbName, dbPort, true)) ?? false;
|
|
223
|
-
if (isReady) {
|
|
224
|
-
dbConnected = true;
|
|
225
|
-
spinner.succeed(`Database is ready and connection successful!`);
|
|
226
|
-
break;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
if (!isReady) {
|
|
230
|
-
spinner.fail(`Database did not become ready after ${maxRetries * 2} seconds. Please check Docker logs.`);
|
|
231
|
-
return;
|
|
232
|
-
}
|
|
154
|
+
await this.waitForDatabaseConnection(name, projectDatabaseConfig, spinner);
|
|
155
|
+
dbConnected = true;
|
|
233
156
|
}
|
|
234
157
|
catch (error) {
|
|
235
158
|
spinner.fail(`Failed to start Docker Compose. Make sure Docker and Docker Compose are installed and running.`);
|
|
@@ -242,6 +165,7 @@ let NewCommand = class NewCommand extends nest_commander_1.CommandRunner {
|
|
|
242
165
|
else {
|
|
243
166
|
spinner.succeed(`Database connection successful for ${name}.`);
|
|
244
167
|
}
|
|
168
|
+
await this.handleExistingDatabaseState(name, destinationPath, projectDatabaseConfig, spinner);
|
|
245
169
|
const jwtSecret = (0, crypto_1.randomBytes)(32).toString('hex');
|
|
246
170
|
const encryptionSecret = (0, crypto_1.randomBytes)(64).toString('hex');
|
|
247
171
|
await this.hedhog.setEnvFileVariable((0, path_1.resolve)(this.rootDirectory, name, 'apps', 'api', '.example'), {
|
|
@@ -272,6 +196,187 @@ let NewCommand = class NewCommand extends nest_commander_1.CommandRunner {
|
|
|
272
196
|
}
|
|
273
197
|
spinner.info(`Project ${name} created successfully! You can now navigate to the project directory and start working.`);
|
|
274
198
|
}
|
|
199
|
+
async writeDatabaseDockerCompose(destinationPath, projectName, dbConfig, volumeSuffix) {
|
|
200
|
+
const projectSlug = this.developer.toKebabCase(projectName);
|
|
201
|
+
const baseVolumeName = dbConfig.type === 'postgres'
|
|
202
|
+
? `hedhog-postgresql-${projectSlug}`
|
|
203
|
+
: `hedhog-mysql-${projectSlug}`;
|
|
204
|
+
const volumeName = volumeSuffix
|
|
205
|
+
? `${baseVolumeName}-${volumeSuffix}`
|
|
206
|
+
: baseVolumeName;
|
|
207
|
+
if (dbConfig.type === 'postgres') {
|
|
208
|
+
await this.hedhog.createDockerComposeFile((0, path_1.join)(destinationPath, 'docker-compose.yaml'), {
|
|
209
|
+
services: {
|
|
210
|
+
postgres: {
|
|
211
|
+
image: 'postgres:18',
|
|
212
|
+
restart: 'always',
|
|
213
|
+
environment: {
|
|
214
|
+
POSTGRES_USER: dbConfig.user,
|
|
215
|
+
POSTGRES_PASSWORD: dbConfig.password,
|
|
216
|
+
POSTGRES_DB: dbConfig.database,
|
|
217
|
+
},
|
|
218
|
+
volumes: [`${volumeName}:/var/lib/postgresql`],
|
|
219
|
+
ports: [`${dbConfig.port}:5432`],
|
|
220
|
+
healthcheck: {
|
|
221
|
+
test: ['CMD-SHELL', `pg_isready -U ${dbConfig.user}`],
|
|
222
|
+
interval: '10s',
|
|
223
|
+
timeout: '5s',
|
|
224
|
+
retries: 5,
|
|
225
|
+
},
|
|
226
|
+
deploy: {
|
|
227
|
+
resources: {
|
|
228
|
+
limits: {
|
|
229
|
+
cpus: '0.5',
|
|
230
|
+
memory: '1G',
|
|
231
|
+
},
|
|
232
|
+
},
|
|
233
|
+
},
|
|
234
|
+
},
|
|
235
|
+
},
|
|
236
|
+
volumes: {
|
|
237
|
+
[volumeName]: {},
|
|
238
|
+
},
|
|
239
|
+
});
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
await this.hedhog.createDockerComposeFile((0, path_1.join)(destinationPath, 'docker-compose.yaml'), {
|
|
243
|
+
services: {
|
|
244
|
+
mysql: {
|
|
245
|
+
image: 'mysql',
|
|
246
|
+
restart: 'always',
|
|
247
|
+
environment: {
|
|
248
|
+
MYSQL_ROOT_PASSWORD: dbConfig.password,
|
|
249
|
+
MYSQL_DATABASE: dbConfig.database,
|
|
250
|
+
MYSQL_USER: dbConfig.user,
|
|
251
|
+
MYSQL_PASSWORD: dbConfig.password,
|
|
252
|
+
},
|
|
253
|
+
volumes: [`${volumeName}:/var/lib/mysql`],
|
|
254
|
+
ports: [`${dbConfig.port}:3306`],
|
|
255
|
+
healthcheck: {
|
|
256
|
+
test: [
|
|
257
|
+
'CMD-SHELL',
|
|
258
|
+
`mysqladmin ping -h localhost -u ${dbConfig.user} -p${dbConfig.password}`,
|
|
259
|
+
],
|
|
260
|
+
interval: '10s',
|
|
261
|
+
timeout: '5s',
|
|
262
|
+
retries: 5,
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
},
|
|
266
|
+
volumes: {
|
|
267
|
+
[volumeName]: {},
|
|
268
|
+
},
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
async waitForDatabaseConnection(projectName, dbConfig, spinner) {
|
|
272
|
+
spinner.start('Waiting for database to be ready (this may take a few seconds)...');
|
|
273
|
+
const maxRetries = 30;
|
|
274
|
+
let retries = 0;
|
|
275
|
+
let isReady = false;
|
|
276
|
+
while (retries < maxRetries && !isReady) {
|
|
277
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
278
|
+
retries++;
|
|
279
|
+
isReady =
|
|
280
|
+
(await this.database.testConnection(dbConfig.type, dbConfig.host, dbConfig.user, dbConfig.password, dbConfig.database, dbConfig.port, true)) ?? false;
|
|
281
|
+
}
|
|
282
|
+
if (!isReady) {
|
|
283
|
+
spinner.fail(`Database did not become ready after ${maxRetries * 2} seconds. Please check Docker logs.`);
|
|
284
|
+
throw new Error(`Database did not become ready for ${projectName}.`);
|
|
285
|
+
}
|
|
286
|
+
spinner.succeed(`Database is ready and connection successful!`);
|
|
287
|
+
}
|
|
288
|
+
async handleExistingDatabaseState(projectName, destinationPath, dbConfig, spinner) {
|
|
289
|
+
const inspection = await this.database.inspectDatabaseState(dbConfig.type, dbConfig.host, dbConfig.user, dbConfig.password, dbConfig.database, dbConfig.port);
|
|
290
|
+
if (!inspection.hasFailedMigrations && !inspection.hasUserTables) {
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
293
|
+
const findings = [];
|
|
294
|
+
if (inspection.hasFailedMigrations) {
|
|
295
|
+
findings.push(`migrations com falha: ${inspection.failedMigrationNames.join(', ')}`);
|
|
296
|
+
}
|
|
297
|
+
if (inspection.hasUserTables) {
|
|
298
|
+
findings.push(`tabelas existentes: ${inspection.userTableNames.slice(0, 5).join(', ')}`);
|
|
299
|
+
}
|
|
300
|
+
spinner.warn(`Existing database state detected for ${projectName} (${findings.join(' | ')}).`);
|
|
301
|
+
const action = await this.promptForExistingDatabaseAction(projectName, dbConfig, inspection);
|
|
302
|
+
if (action === 'cancel') {
|
|
303
|
+
throw new Error('Project creation cancelled to avoid accidental data loss.');
|
|
304
|
+
}
|
|
305
|
+
if (action === 'new-container') {
|
|
306
|
+
await this.recreateProjectDatabaseContainer(projectName, destinationPath, dbConfig, spinner);
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
const confirmed = await this.confirmDangerousDatabaseCleanup(projectName, dbConfig);
|
|
310
|
+
if (!confirmed) {
|
|
311
|
+
throw new Error('Database cleanup cancelled to avoid accidental data loss.');
|
|
312
|
+
}
|
|
313
|
+
spinner.start(`Cleaning current database for ${projectName}...`);
|
|
314
|
+
await this.database.resetDatabaseByConnection(dbConfig.type, dbConfig.host, dbConfig.user, dbConfig.password, dbConfig.database, dbConfig.port);
|
|
315
|
+
spinner.succeed(`Current database cleaned for ${projectName}.`);
|
|
316
|
+
}
|
|
317
|
+
async promptForExistingDatabaseAction(projectName, dbConfig, inspection) {
|
|
318
|
+
const findings = [];
|
|
319
|
+
if (inspection.failedMigrationNames.length > 0) {
|
|
320
|
+
findings.push(`• Migrations com falha: ${inspection.failedMigrationNames.join(', ')}`);
|
|
321
|
+
}
|
|
322
|
+
if (inspection.userTableNames.length > 0) {
|
|
323
|
+
findings.push(`• Tabelas existentes: ${inspection.userTableNames.slice(0, 8).join(', ')}`);
|
|
324
|
+
}
|
|
325
|
+
console.log('\n' +
|
|
326
|
+
[
|
|
327
|
+
chalk.yellow(`⚠️ O banco "${dbConfig.database}" já contém dados ou migrations anteriores.`),
|
|
328
|
+
...findings,
|
|
329
|
+
chalk.red.bold('PERIGO: se você escolher limpar o banco atual, TODOS os dados existentes serão perdidos.'),
|
|
330
|
+
].join('\n'));
|
|
331
|
+
const { action } = await inquirer_1.default.prompt([
|
|
332
|
+
{
|
|
333
|
+
type: 'list',
|
|
334
|
+
name: 'action',
|
|
335
|
+
message: `Como deseja continuar com o projeto ${projectName}?`,
|
|
336
|
+
default: 'new-container',
|
|
337
|
+
choices: [
|
|
338
|
+
{
|
|
339
|
+
name: 'Criar um novo container/volume para este projeto (recomendado, preserva os dados atuais)',
|
|
340
|
+
value: 'new-container',
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
name: 'Limpar o banco atual e continuar (PERIGO: apaga todos os dados desse banco)',
|
|
344
|
+
value: 'clean-current',
|
|
345
|
+
},
|
|
346
|
+
{
|
|
347
|
+
name: 'Cancelar a criação do projeto',
|
|
348
|
+
value: 'cancel',
|
|
349
|
+
},
|
|
350
|
+
],
|
|
351
|
+
},
|
|
352
|
+
]);
|
|
353
|
+
return action;
|
|
354
|
+
}
|
|
355
|
+
async confirmDangerousDatabaseCleanup(projectName, dbConfig) {
|
|
356
|
+
const { confirmed } = await inquirer_1.default.prompt([
|
|
357
|
+
{
|
|
358
|
+
type: 'confirm',
|
|
359
|
+
name: 'confirmed',
|
|
360
|
+
default: false,
|
|
361
|
+
message: `PERIGO: limpar o banco atual de ${dbConfig.host}:${dbConfig.port}/${dbConfig.database} ` +
|
|
362
|
+
`vai remover TODOS os dados existentes. Deseja continuar com ${projectName}?`,
|
|
363
|
+
},
|
|
364
|
+
]);
|
|
365
|
+
return confirmed;
|
|
366
|
+
}
|
|
367
|
+
async recreateProjectDatabaseContainer(projectName, destinationPath, dbConfig, spinner) {
|
|
368
|
+
const freshSuffix = Date.now().toString(36);
|
|
369
|
+
await this.writeDatabaseDockerCompose(destinationPath, projectName, dbConfig, freshSuffix);
|
|
370
|
+
spinner.start(`Creating a fresh container for ${projectName}...`);
|
|
371
|
+
await this.runner.executeCommand(runner_service_1.ProgramName.DOCKER_COMPOSE, ['down'], {
|
|
372
|
+
cwd: destinationPath,
|
|
373
|
+
}, true);
|
|
374
|
+
await this.runner.executeCommand(runner_service_1.ProgramName.DOCKER_COMPOSE, ['up', '-d', '--force-recreate'], {
|
|
375
|
+
cwd: destinationPath,
|
|
376
|
+
}, true);
|
|
377
|
+
spinner.succeed(`Fresh container prepared for ${projectName}.`);
|
|
378
|
+
await this.waitForDatabaseConnection(projectName, dbConfig, spinner);
|
|
379
|
+
}
|
|
275
380
|
parseSkipINstall() {
|
|
276
381
|
return true;
|
|
277
382
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new.command.js","sourceRoot":"","sources":["../../../src/commands/new.command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"new.command.js","sourceRoot":"","sources":["../../../src/commands/new.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
export interface DatabaseInspectionResult {
|
|
2
|
+
hasFailedMigrations: boolean;
|
|
3
|
+
failedMigrationNames: string[];
|
|
4
|
+
hasUserTables: boolean;
|
|
5
|
+
userTableNames: string[];
|
|
6
|
+
}
|
|
1
7
|
export declare class DatabaseService {
|
|
2
8
|
getDatabaseType(cwd: string): Promise<'mysql' | 'postgres' | null>;
|
|
3
9
|
getDatabaseConfig(cwd: string): Promise<{
|
|
@@ -10,6 +16,8 @@ export declare class DatabaseService {
|
|
|
10
16
|
} | null>;
|
|
11
17
|
executeQuery(cwd: string, query: string, params?: any[]): Promise<any>;
|
|
12
18
|
testConnection(type: 'mysql' | 'postgres', host: string, user: string, password: string, database: string, port: number, silent?: boolean): Promise<boolean | undefined>;
|
|
19
|
+
inspectDatabaseState(type: 'mysql' | 'postgres', host: string, user: string, password: string, database: string, port: number): Promise<DatabaseInspectionResult>;
|
|
20
|
+
resetDatabaseByConnection(type: 'mysql' | 'postgres', host: string, user: string, password: string, database: string, port: number): Promise<void>;
|
|
13
21
|
generateEnvFileIfNotExists(appPath: string, dockerComposeFilePath: string): Promise<void>;
|
|
14
22
|
private upsertEnvVariable;
|
|
15
23
|
}
|
|
@@ -140,6 +140,126 @@ let DatabaseService = class DatabaseService {
|
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
|
+
async inspectDatabaseState(type, host, user, password, database, port) {
|
|
144
|
+
const result = {
|
|
145
|
+
hasFailedMigrations: false,
|
|
146
|
+
failedMigrationNames: [],
|
|
147
|
+
hasUserTables: false,
|
|
148
|
+
userTableNames: [],
|
|
149
|
+
};
|
|
150
|
+
if (type === 'postgres') {
|
|
151
|
+
const client = new pg_1.Client({
|
|
152
|
+
host,
|
|
153
|
+
user,
|
|
154
|
+
password,
|
|
155
|
+
database,
|
|
156
|
+
port,
|
|
157
|
+
});
|
|
158
|
+
await client.connect();
|
|
159
|
+
try {
|
|
160
|
+
try {
|
|
161
|
+
const failedMigrations = await client.query(`SELECT migration_name
|
|
162
|
+
FROM "_prisma_migrations"
|
|
163
|
+
WHERE finished_at IS NULL
|
|
164
|
+
AND rolled_back_at IS NULL`);
|
|
165
|
+
result.failedMigrationNames = failedMigrations.rows.map((row) => row.migration_name);
|
|
166
|
+
result.hasFailedMigrations = result.failedMigrationNames.length > 0;
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
if (error?.code !== '42P01') {
|
|
170
|
+
throw error;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
const userTables = await client.query(`SELECT tablename
|
|
174
|
+
FROM pg_tables
|
|
175
|
+
WHERE schemaname = 'public'
|
|
176
|
+
AND tablename <> '_prisma_migrations'
|
|
177
|
+
ORDER BY tablename`);
|
|
178
|
+
result.userTableNames = userTables.rows.map((row) => row.tablename);
|
|
179
|
+
result.hasUserTables = result.userTableNames.length > 0;
|
|
180
|
+
}
|
|
181
|
+
finally {
|
|
182
|
+
await client.end();
|
|
183
|
+
}
|
|
184
|
+
return result;
|
|
185
|
+
}
|
|
186
|
+
const connection = await (0, promise_1.createConnection)({
|
|
187
|
+
host,
|
|
188
|
+
user,
|
|
189
|
+
password,
|
|
190
|
+
database,
|
|
191
|
+
port,
|
|
192
|
+
});
|
|
193
|
+
try {
|
|
194
|
+
try {
|
|
195
|
+
const [failedMigrations] = await connection.query(`SELECT migration_name
|
|
196
|
+
FROM _prisma_migrations
|
|
197
|
+
WHERE finished_at IS NULL
|
|
198
|
+
AND rolled_back_at IS NULL`);
|
|
199
|
+
result.failedMigrationNames = failedMigrations.map((row) => row.migration_name);
|
|
200
|
+
result.hasFailedMigrations = result.failedMigrationNames.length > 0;
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
if (error?.code !== 'ER_NO_SUCH_TABLE') {
|
|
204
|
+
throw error;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
const [userTables] = await connection.query(`SELECT table_name
|
|
208
|
+
FROM information_schema.tables
|
|
209
|
+
WHERE table_schema = ?
|
|
210
|
+
AND table_name <> '_prisma_migrations'
|
|
211
|
+
ORDER BY table_name`, [database]);
|
|
212
|
+
result.userTableNames = userTables.map((row) => row.table_name);
|
|
213
|
+
result.hasUserTables = result.userTableNames.length > 0;
|
|
214
|
+
}
|
|
215
|
+
finally {
|
|
216
|
+
await connection.end();
|
|
217
|
+
}
|
|
218
|
+
return result;
|
|
219
|
+
}
|
|
220
|
+
async resetDatabaseByConnection(type, host, user, password, database, port) {
|
|
221
|
+
if (type === 'postgres') {
|
|
222
|
+
const client = new pg_1.Client({
|
|
223
|
+
host,
|
|
224
|
+
user,
|
|
225
|
+
password,
|
|
226
|
+
database,
|
|
227
|
+
port,
|
|
228
|
+
});
|
|
229
|
+
await client.connect();
|
|
230
|
+
try {
|
|
231
|
+
await client.query('DROP SCHEMA IF EXISTS public CASCADE; CREATE SCHEMA public;');
|
|
232
|
+
}
|
|
233
|
+
finally {
|
|
234
|
+
await client.end();
|
|
235
|
+
}
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
const connection = await (0, promise_1.createConnection)({
|
|
239
|
+
host,
|
|
240
|
+
user,
|
|
241
|
+
password,
|
|
242
|
+
database,
|
|
243
|
+
port,
|
|
244
|
+
multipleStatements: true,
|
|
245
|
+
});
|
|
246
|
+
try {
|
|
247
|
+
const [tables] = await connection.query(`SELECT table_name
|
|
248
|
+
FROM information_schema.tables
|
|
249
|
+
WHERE table_schema = ?`, [database]);
|
|
250
|
+
if (tables.length === 0) {
|
|
251
|
+
return;
|
|
252
|
+
}
|
|
253
|
+
await connection.query('SET FOREIGN_KEY_CHECKS = 0');
|
|
254
|
+
for (const table of tables) {
|
|
255
|
+
await connection.query(`DROP TABLE IF EXISTS \`${table.table_name}\``);
|
|
256
|
+
}
|
|
257
|
+
await connection.query('SET FOREIGN_KEY_CHECKS = 1');
|
|
258
|
+
}
|
|
259
|
+
finally {
|
|
260
|
+
await connection.end();
|
|
261
|
+
}
|
|
262
|
+
}
|
|
143
263
|
async generateEnvFileIfNotExists(appPath, dockerComposeFilePath) {
|
|
144
264
|
const envFilePath = (0, path_1.resolve)(`${appPath}/.env`);
|
|
145
265
|
const envExamplePath = (0, path_1.resolve)(`${appPath}/.env.example`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.service.js","sourceRoot":"","sources":["../../../../src/modules/database/database.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAC5C,+BAA+B;AAC/B,0CAAkD;AAClD,4CAAkD;AAClD,+BAA+B;AAC/B,2BAA4B;
|
|
1
|
+
{"version":3,"file":"database.service.js","sourceRoot":"","sources":["../../../../src/modules/database/database.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1279,15 +1279,15 @@ CMD ["sh", "-c", "${startCmd}"]
|
|
|
1279
1279
|
{
|
|
1280
1280
|
type: 'input',
|
|
1281
1281
|
name: 'frontendUrls',
|
|
1282
|
-
message: 'Enter
|
|
1282
|
+
message: 'Enter FRONTEND_URL for API runtime (optional):',
|
|
1283
1283
|
default: (answers) => answers.domain ? `https://${String(answers.domain).trim()}` : '',
|
|
1284
1284
|
filter: (input) => String(input || '').trim(),
|
|
1285
|
-
when: (answers) => (answers.apps || []).includes('
|
|
1285
|
+
when: (answers) => (answers.apps || []).includes('api'),
|
|
1286
1286
|
},
|
|
1287
1287
|
{
|
|
1288
1288
|
type: 'input',
|
|
1289
1289
|
name: 'apiDomain',
|
|
1290
|
-
message: 'Enter the API
|
|
1290
|
+
message: 'Enter the API URL for admin runtime (used for NEXT_PUBLIC_API_BASE_URL and INTERNAL_API_URL):',
|
|
1291
1291
|
default: (answers) => {
|
|
1292
1292
|
const domain = String(answers.domain || '').trim();
|
|
1293
1293
|
const appName = String(answers.appName || '').trim();
|
|
@@ -1300,13 +1300,12 @@ CMD ["sh", "-c", "${startCmd}"]
|
|
|
1300
1300
|
},
|
|
1301
1301
|
filter: (input) => String(input || '').trim(),
|
|
1302
1302
|
validate: (input) => String(input || '').trim().length > 0 || 'API domain is required',
|
|
1303
|
-
when: (answers) => (answers.apps || []).includes('admin')
|
|
1304
|
-
String(answers.domain || '').trim().length > 0,
|
|
1303
|
+
when: (answers) => (answers.apps || []).includes('admin'),
|
|
1305
1304
|
},
|
|
1306
1305
|
{
|
|
1307
1306
|
type: 'input',
|
|
1308
1307
|
name: 'jwtExpiresIn',
|
|
1309
|
-
message: 'JWT token expiry for API (
|
|
1308
|
+
message: 'JWT token expiry for API (JWT_EXPIRES_IN):',
|
|
1310
1309
|
default: '7d',
|
|
1311
1310
|
filter: (input) => String(input || '').trim(),
|
|
1312
1311
|
validate: (input) => String(input || '').trim().length > 0 || 'JWT expiry is required',
|
|
@@ -1699,7 +1698,7 @@ temp
|
|
|
1699
1698
|
console.log(chalk.white('Domain: ') + chalk.cyan(config.domain));
|
|
1700
1699
|
}
|
|
1701
1700
|
if (config.frontendUrls) {
|
|
1702
|
-
console.log(chalk.white('Frontend
|
|
1701
|
+
console.log(chalk.white('Frontend URL: ') + chalk.cyan(config.frontendUrls));
|
|
1703
1702
|
}
|
|
1704
1703
|
console.log(chalk.white('Apps: ') + chalk.cyan(config.apps.join(', ')));
|
|
1705
1704
|
console.log(chalk.white('Replicas: ') +
|