@javalabs/prisma-client 1.0.6 → 1.0.9
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/scripts/database-initializer.d.ts +5 -0
- package/dist/scripts/database-initializer.js +45 -0
- package/dist/scripts/database-initializer.js.map +1 -0
- package/dist/scripts/post-migration-validator.d.ts +18 -5
- package/dist/scripts/post-migration-validator.js +61 -39
- package/dist/scripts/post-migration-validator.js.map +1 -1
- package/dist/scripts/run-migration.js +42 -21
- package/dist/scripts/run-migration.js.map +1 -1
- package/dist/scripts/sequence-synchronizer.d.ts +8 -0
- package/dist/scripts/sequence-synchronizer.js +88 -0
- package/dist/scripts/sequence-synchronizer.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -1
- package/prisma/migrations/{20250422001248_add_bank_account_id → 0_init}/migration.sql +269 -47
- package/prisma/migrations/20250505171324_add_bank_owner_name_in_manual_transfer/migration.sql +2 -0
- package/prisma/migrations/20250505173850_add_method_name_in_manual_transfer/migration.sql +2 -0
- package/prisma/migrations/20250505182032_update_receipt_image_url/migration.sql +2 -0
- package/prisma/migrations/migration_lock.toml +2 -2
- package/prisma/schema.prisma +214 -77
- package/src/scripts/database-initializer.ts +49 -0
- package/src/scripts/run-migration.ts +54 -24
- package/src/scripts/sequence-synchronizer.ts +127 -0
- package/prisma/migrations/20250422001957_add_bank_account_id_relations/migration.sql +0 -14
- package/src/scripts/dumps/source_dump_20250413_112626.sql +0 -1527
- package/src/scripts/dumps/source_dump_20250428_145606.sql +0 -323
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DatabaseInitializer = void 0;
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const util_1 = require("util");
|
|
6
|
+
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
7
|
+
class DatabaseInitializer {
|
|
8
|
+
constructor(databaseUrl) {
|
|
9
|
+
this.databaseUrl = databaseUrl;
|
|
10
|
+
}
|
|
11
|
+
async initialize() {
|
|
12
|
+
try {
|
|
13
|
+
console.log("Checking if database needs initialization...");
|
|
14
|
+
const { Pool } = await Promise.resolve().then(() => require("pg"));
|
|
15
|
+
const pool = new Pool({ connectionString: this.databaseUrl });
|
|
16
|
+
try {
|
|
17
|
+
const result = await pool.query(`
|
|
18
|
+
SELECT COUNT(*)
|
|
19
|
+
FROM information_schema.tables
|
|
20
|
+
WHERE table_schema = 'public'
|
|
21
|
+
AND table_type = 'BASE TABLE'
|
|
22
|
+
`);
|
|
23
|
+
const tableCount = parseInt(result.rows[0].count);
|
|
24
|
+
if (tableCount === 0) {
|
|
25
|
+
console.log("No tables found in database. Running initial migration...");
|
|
26
|
+
await execAsync("npx prisma migrate deploy");
|
|
27
|
+
await execAsync("npx prisma db push");
|
|
28
|
+
console.log("Initial database migration completed successfully.");
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
console.log(`Database already contains ${tableCount} tables. Skipping initialization.`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
finally {
|
|
35
|
+
await pool.end();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
console.error("Error initializing database:", error);
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.DatabaseInitializer = DatabaseInitializer;
|
|
45
|
+
//# sourceMappingURL=database-initializer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-initializer.js","sourceRoot":"","sources":["../../src/scripts/database-initializer.ts"],"names":[],"mappings":";;;AACA,iDAAqC;AACrC,+BAAiC;AAEjC,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AAElC,MAAa,mBAAmB;IAC9B,YAA6B,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;IAAG,CAAC;IAEpD,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAE5D,MAAM,EAAE,IAAI,EAAE,GAAG,2CAAa,IAAI,EAAC,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAE9D,IAAI,CAAC;gBAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;SAK/B,CAAC,CAAC;gBAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAElD,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CACT,2DAA2D,CAC5D,CAAC;oBAEF,MAAM,SAAS,CAAC,2BAA2B,CAAC,CAAC;oBAC7C,MAAM,SAAS,CAAC,oBAAoB,CAAC,CAAC;oBACtC,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;gBACpE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CACT,6BAA6B,UAAU,mCAAmC,CAC3E,CAAC;gBACJ,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF;AA1CD,kDA0CC"}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
interface ValidationIssue {
|
|
2
|
+
type: string;
|
|
3
|
+
tenantId?: string;
|
|
4
|
+
providerId?: number | null;
|
|
5
|
+
message: string;
|
|
6
|
+
}
|
|
7
|
+
interface ValidationResult {
|
|
8
|
+
success: boolean;
|
|
9
|
+
issueCount: number;
|
|
10
|
+
timestamp: string;
|
|
11
|
+
sourceDatabase: string;
|
|
12
|
+
targetDatabase: string;
|
|
13
|
+
issues: ValidationIssue[];
|
|
14
|
+
}
|
|
1
15
|
export declare class PostMigrationValidator {
|
|
2
16
|
private readonly sourceUrl;
|
|
3
17
|
private readonly targetUrl;
|
|
@@ -7,11 +21,9 @@ export declare class PostMigrationValidator {
|
|
|
7
21
|
private readonly reportPath;
|
|
8
22
|
private issues;
|
|
9
23
|
constructor(sourceUrl?: string, targetUrl?: string);
|
|
10
|
-
validate(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
reportPath: string;
|
|
14
|
-
}>;
|
|
24
|
+
validate(options?: {
|
|
25
|
+
publicOnly?: boolean;
|
|
26
|
+
}): Promise<ValidationResult>;
|
|
15
27
|
private validateTenantData;
|
|
16
28
|
private validateTableData;
|
|
17
29
|
private validateRandomRecords;
|
|
@@ -19,3 +31,4 @@ export declare class PostMigrationValidator {
|
|
|
19
31
|
private saveReport;
|
|
20
32
|
private cleanup;
|
|
21
33
|
}
|
|
34
|
+
export {};
|
|
@@ -11,7 +11,7 @@ class PostMigrationValidator {
|
|
|
11
11
|
constructor(sourceUrl = process.env.SOURCE_DATABASE_URL, targetUrl = process.env.DATABASE_URL) {
|
|
12
12
|
this.sourceUrl = sourceUrl;
|
|
13
13
|
this.targetUrl = targetUrl;
|
|
14
|
-
this.logger = new common_1.Logger(
|
|
14
|
+
this.logger = new common_1.Logger("PostMigrationValidator");
|
|
15
15
|
this.issues = [];
|
|
16
16
|
this.sourcePool = new pg.Pool({
|
|
17
17
|
connectionString: this.sourceUrl,
|
|
@@ -19,16 +19,32 @@ class PostMigrationValidator {
|
|
|
19
19
|
this.targetPool = new pg.Pool({
|
|
20
20
|
connectionString: this.targetUrl,
|
|
21
21
|
});
|
|
22
|
-
const reportsDir = path.join(process.cwd(),
|
|
22
|
+
const reportsDir = path.join(process.cwd(), "migration-logs");
|
|
23
23
|
if (!fs.existsSync(reportsDir)) {
|
|
24
24
|
fs.mkdirSync(reportsDir, { recursive: true });
|
|
25
25
|
}
|
|
26
|
-
const timestamp = new Date()
|
|
26
|
+
const timestamp = new Date()
|
|
27
|
+
.toISOString()
|
|
28
|
+
.replace(/:/g, "-")
|
|
29
|
+
.replace(/\..+/, "");
|
|
27
30
|
this.reportPath = path.join(reportsDir, `post-migration-report-${timestamp}.json`);
|
|
28
31
|
}
|
|
29
|
-
async validate() {
|
|
32
|
+
async validate(options) {
|
|
33
|
+
const issues = [];
|
|
34
|
+
const timestamp = new Date().toISOString();
|
|
30
35
|
try {
|
|
31
|
-
|
|
36
|
+
if (options === null || options === void 0 ? void 0 : options.publicOnly) {
|
|
37
|
+
this.logger.log("Running validation in public-only mode");
|
|
38
|
+
return {
|
|
39
|
+
success: true,
|
|
40
|
+
issueCount: 0,
|
|
41
|
+
timestamp,
|
|
42
|
+
sourceDatabase: process.env.SOURCE_DATABASE_URL,
|
|
43
|
+
targetDatabase: process.env.DATABASE_URL,
|
|
44
|
+
issues: [],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
this.logger.log("Starting post-migration validation");
|
|
32
48
|
const apiKeysResult = await this.sourcePool.query(`
|
|
33
49
|
SELECT api_key, provider_id
|
|
34
50
|
FROM api_keys
|
|
@@ -43,33 +59,39 @@ class PostMigrationValidator {
|
|
|
43
59
|
this.logger.log(`Validation completed with ${this.issues.length} issues found`);
|
|
44
60
|
if (this.issues.length > 0) {
|
|
45
61
|
this.logger.log(`Check the full report at: ${this.reportPath}`);
|
|
46
|
-
this.logger.log(
|
|
62
|
+
this.logger.log("Sample issues:");
|
|
47
63
|
for (let i = 0; i < Math.min(5, this.issues.length); i++) {
|
|
48
64
|
const issue = this.issues[i];
|
|
49
65
|
this.logger.log(`- ${issue.type}: ${issue.message}`);
|
|
50
66
|
}
|
|
51
67
|
}
|
|
52
68
|
else {
|
|
53
|
-
this.logger.log(
|
|
69
|
+
this.logger.log("No issues found. Migration was successful.");
|
|
54
70
|
}
|
|
55
71
|
return {
|
|
56
72
|
success: this.issues.length === 0,
|
|
57
73
|
issueCount: this.issues.length,
|
|
58
|
-
|
|
74
|
+
timestamp,
|
|
75
|
+
sourceDatabase: this.sourceUrl,
|
|
76
|
+
targetDatabase: this.targetUrl,
|
|
77
|
+
issues: this.issues,
|
|
59
78
|
};
|
|
60
79
|
}
|
|
61
80
|
catch (error) {
|
|
62
81
|
this.logger.error(`Error during validation: ${error.message}`, error.stack);
|
|
63
82
|
this.issues.push({
|
|
64
|
-
type:
|
|
83
|
+
type: "VALIDATION_ERROR",
|
|
65
84
|
message: `Validation process failed: ${error.message}`,
|
|
66
|
-
details: error.stack
|
|
85
|
+
details: error.stack,
|
|
67
86
|
});
|
|
68
87
|
this.saveReport();
|
|
69
88
|
return {
|
|
70
89
|
success: false,
|
|
71
90
|
issueCount: this.issues.length,
|
|
72
|
-
|
|
91
|
+
timestamp,
|
|
92
|
+
sourceDatabase: this.sourceUrl,
|
|
93
|
+
targetDatabase: this.targetUrl,
|
|
94
|
+
issues: this.issues,
|
|
73
95
|
};
|
|
74
96
|
}
|
|
75
97
|
finally {
|
|
@@ -88,10 +110,10 @@ class PostMigrationValidator {
|
|
|
88
110
|
if (schemaExistsResult.rows.length === 0) {
|
|
89
111
|
this.logger.warn(`Schema ${tenantId} does not exist in target database`);
|
|
90
112
|
this.issues.push({
|
|
91
|
-
type:
|
|
113
|
+
type: "MISSING_SCHEMA",
|
|
92
114
|
tenantId,
|
|
93
115
|
providerId,
|
|
94
|
-
message: `Schema ${tenantId} does not exist in target database. Migration failed for this tenant
|
|
116
|
+
message: `Schema ${tenantId} does not exist in target database. Migration failed for this tenant.`,
|
|
95
117
|
});
|
|
96
118
|
return;
|
|
97
119
|
}
|
|
@@ -110,10 +132,10 @@ class PostMigrationValidator {
|
|
|
110
132
|
catch (error) {
|
|
111
133
|
this.logger.error(`Error validating tenant ${tenantId}: ${error.message}`);
|
|
112
134
|
this.issues.push({
|
|
113
|
-
type:
|
|
135
|
+
type: "TENANT_VALIDATION_ERROR",
|
|
114
136
|
tenantId,
|
|
115
137
|
providerId,
|
|
116
|
-
message: `Error validating tenant ${tenantId}: ${error.message}
|
|
138
|
+
message: `Error validating tenant ${tenantId}: ${error.message}`,
|
|
117
139
|
});
|
|
118
140
|
}
|
|
119
141
|
}
|
|
@@ -140,23 +162,23 @@ class PostMigrationValidator {
|
|
|
140
162
|
this.logger.log(`Table ${tableName} for tenant ${tenantId}: ${targetCount}/${sourceCount} records migrated (${migrationPercentage.toFixed(2)}%)`);
|
|
141
163
|
if (migrationPercentage < 95) {
|
|
142
164
|
this.issues.push({
|
|
143
|
-
type:
|
|
165
|
+
type: "DATA_MISMATCH",
|
|
144
166
|
tenantId,
|
|
145
167
|
tableName,
|
|
146
168
|
sourceCount,
|
|
147
169
|
targetCount,
|
|
148
170
|
migrationPercentage: parseFloat(migrationPercentage.toFixed(2)),
|
|
149
|
-
message: `Table ${tableName} for tenant ${tenantId}: Only ${migrationPercentage.toFixed(2)}% of records were migrated (${targetCount}/${sourceCount})
|
|
171
|
+
message: `Table ${tableName} for tenant ${tenantId}: Only ${migrationPercentage.toFixed(2)}% of records were migrated (${targetCount}/${sourceCount})`,
|
|
150
172
|
});
|
|
151
173
|
}
|
|
152
174
|
if (targetCount > sourceCount) {
|
|
153
175
|
this.issues.push({
|
|
154
|
-
type:
|
|
176
|
+
type: "EXCESS_DATA",
|
|
155
177
|
tenantId,
|
|
156
178
|
tableName,
|
|
157
179
|
sourceCount,
|
|
158
180
|
targetCount,
|
|
159
|
-
message: `Table ${tableName} for tenant ${tenantId}: Target has more records (${targetCount}) than source (${sourceCount})
|
|
181
|
+
message: `Table ${tableName} for tenant ${tenantId}: Target has more records (${targetCount}) than source (${sourceCount})`,
|
|
160
182
|
});
|
|
161
183
|
}
|
|
162
184
|
if (sourceCount > 0 && targetCount > 0) {
|
|
@@ -166,10 +188,10 @@ class PostMigrationValidator {
|
|
|
166
188
|
catch (error) {
|
|
167
189
|
this.logger.error(`Error validating table ${tableName} for tenant ${tenantId}: ${error.message}`);
|
|
168
190
|
this.issues.push({
|
|
169
|
-
type:
|
|
191
|
+
type: "TABLE_VALIDATION_ERROR",
|
|
170
192
|
tenantId,
|
|
171
193
|
tableName,
|
|
172
|
-
message: `Error validating table ${tableName} for tenant ${tenantId}: ${error.message}
|
|
194
|
+
message: `Error validating table ${tableName} for tenant ${tenantId}: ${error.message}`,
|
|
173
195
|
});
|
|
174
196
|
}
|
|
175
197
|
}
|
|
@@ -221,27 +243,27 @@ class PostMigrationValidator {
|
|
|
221
243
|
`, [primaryKeyValue]);
|
|
222
244
|
if (targetRecordResult.rows.length === 0) {
|
|
223
245
|
this.issues.push({
|
|
224
|
-
type:
|
|
246
|
+
type: "MISSING_RECORD",
|
|
225
247
|
tenantId,
|
|
226
248
|
tableName,
|
|
227
249
|
recordId: primaryKeyValue,
|
|
228
|
-
message: `Record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId} was not migrated
|
|
250
|
+
message: `Record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId} was not migrated`,
|
|
229
251
|
});
|
|
230
252
|
continue;
|
|
231
253
|
}
|
|
232
254
|
const targetRecord = targetRecordResult.rows[0];
|
|
233
255
|
for (const columnName in sourceRecord) {
|
|
234
|
-
if (columnName ===
|
|
256
|
+
if (columnName === "provider_id") {
|
|
235
257
|
continue;
|
|
236
258
|
}
|
|
237
259
|
if (!(columnName in targetRecord)) {
|
|
238
260
|
this.issues.push({
|
|
239
|
-
type:
|
|
261
|
+
type: "MISSING_COLUMN",
|
|
240
262
|
tenantId,
|
|
241
263
|
tableName,
|
|
242
264
|
recordId: primaryKeyValue,
|
|
243
265
|
columnName,
|
|
244
|
-
message: `Column ${columnName} is missing in record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId}
|
|
266
|
+
message: `Column ${columnName} is missing in record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId}`,
|
|
245
267
|
});
|
|
246
268
|
continue;
|
|
247
269
|
}
|
|
@@ -249,14 +271,14 @@ class PostMigrationValidator {
|
|
|
249
271
|
const targetValue = targetRecord[columnName];
|
|
250
272
|
if (this.areValuesDifferent(sourceValue, targetValue)) {
|
|
251
273
|
this.issues.push({
|
|
252
|
-
type:
|
|
274
|
+
type: "VALUE_MISMATCH",
|
|
253
275
|
tenantId,
|
|
254
276
|
tableName,
|
|
255
277
|
recordId: primaryKeyValue,
|
|
256
278
|
columnName,
|
|
257
279
|
sourceValue,
|
|
258
280
|
targetValue,
|
|
259
|
-
message: `Value mismatch for column ${columnName} in record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId}: ${sourceValue} (source) vs ${targetValue} (target)
|
|
281
|
+
message: `Value mismatch for column ${columnName} in record with ID ${primaryKeyValue} in table ${tableName} for tenant ${tenantId}: ${sourceValue} (source) vs ${targetValue} (target)`,
|
|
260
282
|
});
|
|
261
283
|
}
|
|
262
284
|
}
|
|
@@ -265,10 +287,10 @@ class PostMigrationValidator {
|
|
|
265
287
|
catch (error) {
|
|
266
288
|
this.logger.error(`Error validating random records for table ${tableName} in tenant ${tenantId}: ${error.message}`);
|
|
267
289
|
this.issues.push({
|
|
268
|
-
type:
|
|
290
|
+
type: "RECORD_VALIDATION_ERROR",
|
|
269
291
|
tenantId,
|
|
270
292
|
tableName,
|
|
271
|
-
message: `Error validating random records for table ${tableName} in tenant ${tenantId}: ${error.message}
|
|
293
|
+
message: `Error validating random records for table ${tableName} in tenant ${tenantId}: ${error.message}`,
|
|
272
294
|
});
|
|
273
295
|
}
|
|
274
296
|
}
|
|
@@ -282,14 +304,14 @@ class PostMigrationValidator {
|
|
|
282
304
|
if (sourceValue instanceof Date && targetValue instanceof Date) {
|
|
283
305
|
return sourceValue.toISOString() !== targetValue.toISOString();
|
|
284
306
|
}
|
|
285
|
-
if (typeof sourceValue ===
|
|
307
|
+
if (typeof sourceValue === "number" && typeof targetValue === "number") {
|
|
286
308
|
const epsilon = 0.0001;
|
|
287
309
|
return Math.abs(sourceValue - targetValue) > epsilon;
|
|
288
310
|
}
|
|
289
|
-
if (typeof sourceValue ===
|
|
311
|
+
if (typeof sourceValue === "string" && typeof targetValue === "string") {
|
|
290
312
|
return sourceValue !== targetValue;
|
|
291
313
|
}
|
|
292
|
-
if (typeof sourceValue ===
|
|
314
|
+
if (typeof sourceValue === "boolean" && typeof targetValue === "boolean") {
|
|
293
315
|
return sourceValue !== targetValue;
|
|
294
316
|
}
|
|
295
317
|
return String(sourceValue) !== String(targetValue);
|
|
@@ -301,16 +323,16 @@ class PostMigrationValidator {
|
|
|
301
323
|
sourceDatabase: this.sourceUrl,
|
|
302
324
|
targetDatabase: this.targetUrl,
|
|
303
325
|
issueCount: this.issues.length,
|
|
304
|
-
issues: this.issues
|
|
326
|
+
issues: this.issues,
|
|
305
327
|
};
|
|
306
|
-
fs.writeFileSync(this.reportPath, JSON.stringify(report, null, 2),
|
|
328
|
+
fs.writeFileSync(this.reportPath, JSON.stringify(report, null, 2), "utf8");
|
|
307
329
|
}
|
|
308
330
|
catch (error) {
|
|
309
331
|
this.logger.error(`Error saving validation report: ${error.message}`);
|
|
310
332
|
}
|
|
311
333
|
}
|
|
312
334
|
async cleanup() {
|
|
313
|
-
this.logger.log(
|
|
335
|
+
this.logger.log("Cleaning up database connections");
|
|
314
336
|
await this.sourcePool.end();
|
|
315
337
|
await this.targetPool.end();
|
|
316
338
|
}
|
|
@@ -322,17 +344,17 @@ if (require.main === module) {
|
|
|
322
344
|
const validator = new PostMigrationValidator();
|
|
323
345
|
const result = await validator.validate();
|
|
324
346
|
if (result.success) {
|
|
325
|
-
console.log(
|
|
347
|
+
console.log("Post-migration validation successful! No issues found.");
|
|
326
348
|
process.exit(0);
|
|
327
349
|
}
|
|
328
350
|
else {
|
|
329
351
|
console.log(`Post-migration validation completed with ${result.issueCount} issues found.`);
|
|
330
|
-
console.log(
|
|
352
|
+
console.log(JSON.stringify(result, null, 2));
|
|
331
353
|
process.exit(1);
|
|
332
354
|
}
|
|
333
355
|
}
|
|
334
356
|
catch (error) {
|
|
335
|
-
console.error(
|
|
357
|
+
console.error("Error:", error.message);
|
|
336
358
|
process.exit(1);
|
|
337
359
|
}
|
|
338
360
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-migration-validator.js","sourceRoot":"","sources":["../../src/scripts/post-migration-validator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"post-migration-validator.js","sourceRoot":"","sources":["../../src/scripts/post-migration-validator.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AACzB,iCAAiC;AACjC,2CAAwC;AACxC,yBAAyB;AACzB,6BAA6B;AAE7B,MAAM,CAAC,MAAM,EAAE,CAAC;AAkBhB,MAAa,sBAAsB;IAOjC,YACmB,YAAoB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EACnD,YAAoB,OAAO,CAAC,GAAG,CAAC,YAAY;QAD5C,cAAS,GAAT,SAAS,CAA0C;QACnD,cAAS,GAAT,SAAS,CAAmC;QAR9C,WAAM,GAAG,IAAI,eAAM,CAAC,wBAAwB,CAAC,CAAC;QAIvD,WAAM,GAAU,EAAE,CAAC;QAMzB,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC;YAC5B,gBAAgB,EAAE,IAAI,CAAC,SAAS;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC;YAC5B,gBAAgB,EAAE,IAAI,CAAC,SAAS;SACjC,CAAC,CAAC;QAGH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;QAGD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE;aACzB,WAAW,EAAE;aACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;aAClB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CACzB,UAAU,EACV,yBAAyB,SAAS,OAAO,CAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAEd;QACC,MAAM,MAAM,GAAsB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,IAAI,CAAC;YAEH,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBAE1D,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,CAAC;oBACb,SAAS;oBACT,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;oBAC/C,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;oBACxC,MAAM,EAAE,EAAE;iBACX,CAAC;YACJ,CAAC;YAGD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAGtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;;;OAGjD,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,SAAS,aAAa,CAAC,IAAI,CAAC,MAAM,uBAAuB,CAC1D,CAAC;YAGF,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;gBAChC,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;gBAEtC,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACtD,CAAC;YAGD,IAAI,CAAC,UAAU,EAAE,CAAC;YAGlB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,6BAA6B,IAAI,CAAC,MAAM,CAAC,MAAM,eAAe,CAC/D,CAAC;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;gBAGhE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;YAChE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBACjC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC9B,SAAS;gBACT,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,4BAA4B,KAAK,CAAC,OAAO,EAAE,EAC3C,KAAK,CAAC,KAAK,CACZ,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,8BAA8B,KAAK,CAAC,OAAO,EAAE;gBACtD,OAAO,EAAE,KAAK,CAAC,KAAK;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC9B,SAAS;gBACT,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,UAAkB;QACnE,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,+BAA+B,QAAQ,kBAAkB,UAAU,GAAG,CACvE,CAAC;QAEF,IAAI,CAAC;YAEH,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACpD;;;;;OAKD,EACC,CAAC,QAAQ,CAAC,CACX,CAAC;YAEF,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,UAAU,QAAQ,oCAAoC,CACvD,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,gBAAgB;oBACtB,QAAQ;oBACR,UAAU;oBACV,OAAO,EAAE,UAAU,QAAQ,uEAAuE;iBACnG,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAGD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;;;;;;OAMhD,CAAC,CAAC;YAGH,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;gBACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACtC,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2BAA2B,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ;gBACR,UAAU;gBACV,OAAO,EAAE,2BAA2B,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE;aACjE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,QAAgB,EAChB,SAAiB,EACjB,UAAkB;QAElB,IAAI,CAAC;YAEH,IAAI,gBAAgB,GAAG,iCAAiC,SAAS,EAAE,CAAC;YAGpE,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACrD;;;;;;;OAOD,EACC,CAAC,SAAS,CAAC,CACZ,CAAC;YAEF,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,gBAAgB,IAAI,wBAAwB,UAAU,EAAE,CAAC;YAC3D,CAAC;YAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAG9D,MAAM,gBAAgB,GAAG,kCAAkC,QAAQ,MAAM,SAAS,GAAG,CAAC;YACtF,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAG9D,MAAM,mBAAmB,GACvB,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAE5D,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,SAAS,SAAS,eAAe,QAAQ,KAAK,WAAW,IAAI,WAAW,sBAAsB,mBAAmB,CAAC,OAAO,CACvH,CAAC,CACF,IAAI,CACN,CAAC;YAGF,IAAI,mBAAmB,GAAG,EAAE,EAAE,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,eAAe;oBACrB,QAAQ;oBACR,SAAS;oBACT,WAAW;oBACX,WAAW;oBACX,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC/D,OAAO,EAAE,SAAS,SAAS,eAAe,QAAQ,UAAU,mBAAmB,CAAC,OAAO,CACrF,CAAC,CACF,+BAA+B,WAAW,IAAI,WAAW,GAAG;iBAC9D,CAAC,CAAC;YACL,CAAC;YAGD,IAAI,WAAW,GAAG,WAAW,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,aAAa;oBACnB,QAAQ;oBACR,SAAS;oBACT,WAAW;oBACX,WAAW;oBACX,OAAO,EAAE,SAAS,SAAS,eAAe,QAAQ,8BAA8B,WAAW,kBAAkB,WAAW,GAAG;iBAC5H,CAAC,CAAC;YACL,CAAC;YAGD,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0BAA0B,SAAS,eAAe,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAC/E,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,wBAAwB;gBAC9B,QAAQ;gBACR,SAAS;gBACT,OAAO,EAAE,0BAA0B,SAAS,eAAe,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE;aACxF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,QAAgB,EAChB,SAAiB,EACjB,UAAkB;QAElB,IAAI,CAAC;YAEH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAClD;;;;;;;;;;OAUD,EACC,CAAC,SAAS,CAAC,CACZ,CAAC;YAEF,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;gBAChE,OAAO;YACT,CAAC;YAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;YAG9D,IAAI,kBAAkB,GAAG;;eAEhB,SAAS;OACjB,CAAC;YAGF,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACrD;;;;;;;OAOD,EACC,CAAC,SAAS,CAAC,CACZ,CAAC;YAEF,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,kBAAkB,IAAI,wBAAwB,UAAU,EAAE,CAAC;YAC7D,CAAC;YAED,kBAAkB,IAAI;;;OAGrB,CAAC;YAEF,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACrD,kBAAkB,CACnB,CAAC;YAGF,KAAK,MAAM,YAAY,IAAI,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBACpD,MAAM,eAAe,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBAEvD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACpD;;kBAEQ,QAAQ,MAAM,SAAS;mBACtB,gBAAgB;;SAE1B,EACC,CAAC,eAAe,CAAC,CAClB,CAAC;gBAEF,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;wBACf,IAAI,EAAE,gBAAgB;wBACtB,QAAQ;wBACR,SAAS;wBACT,QAAQ,EAAE,eAAe;wBACzB,OAAO,EAAE,kBAAkB,eAAe,aAAa,SAAS,eAAe,QAAQ,mBAAmB;qBAC3G,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAGhD,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;oBAEtC,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;wBACjC,SAAS;oBACX,CAAC;oBAGD,IAAI,CAAC,CAAC,UAAU,IAAI,YAAY,CAAC,EAAE,CAAC;wBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;4BACf,IAAI,EAAE,gBAAgB;4BACtB,QAAQ;4BACR,SAAS;4BACT,QAAQ,EAAE,eAAe;4BACzB,UAAU;4BACV,OAAO,EAAE,UAAU,UAAU,iCAAiC,eAAe,aAAa,SAAS,eAAe,QAAQ,EAAE;yBAC7H,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAGD,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;oBAE7C,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC;wBACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;4BACf,IAAI,EAAE,gBAAgB;4BACtB,QAAQ;4BACR,SAAS;4BACT,QAAQ,EAAE,eAAe;4BACzB,UAAU;4BACV,WAAW;4BACX,WAAW;4BACX,OAAO,EAAE,6BAA6B,UAAU,sBAAsB,eAAe,aAAa,SAAS,eAAe,QAAQ,KAAK,WAAW,gBAAgB,WAAW,WAAW;yBACzL,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,6CAA6C,SAAS,cAAc,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CACjG,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ;gBACR,SAAS;gBACT,OAAO,EAAE,6CAA6C,SAAS,cAAc,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE;aAC1G,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,WAAgB,EAAE,WAAgB;QAE3D,IAAI,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;QAGD,IAAI,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;QAGD,IAAI,WAAW,YAAY,IAAI,IAAI,WAAW,YAAY,IAAI,EAAE,CAAC;YAC/D,OAAO,WAAW,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;QACjE,CAAC;QAGD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACvE,MAAM,OAAO,GAAG,MAAM,CAAC;YACvB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC;QACvD,CAAC;QAGD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACvE,OAAO,WAAW,KAAK,WAAW,CAAC;QACrC,CAAC;QAGD,IAAI,OAAO,WAAW,KAAK,SAAS,IAAI,OAAO,WAAW,KAAK,SAAS,EAAE,CAAC;YACzE,OAAO,WAAW,KAAK,WAAW,CAAC;QACrC,CAAC;QAGD,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC;YAEF,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAC/B,MAAM,CACP,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC;CACF;AA3dD,wDA2dC;AAGD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;QACrB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,sBAAsB,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;YAE1C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;gBACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,4CAA4C,MAAM,CAAC,UAAU,gBAAgB,CAC9E,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,GAAG,EAAE,CAAC;AACR,CAAC"}
|
|
@@ -7,6 +7,8 @@ const util_1 = require("util");
|
|
|
7
7
|
const fix_schema_discrepancies_1 = require("./fix-schema-discrepancies");
|
|
8
8
|
const fs = require("fs");
|
|
9
9
|
const path = require("path");
|
|
10
|
+
const database_initializer_1 = require("./database-initializer");
|
|
11
|
+
const sequence_synchronizer_1 = require("./sequence-synchronizer");
|
|
10
12
|
dotenv.config();
|
|
11
13
|
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
12
14
|
const program = new commander_1.Command();
|
|
@@ -57,6 +59,8 @@ program
|
|
|
57
59
|
.option("--force", "Force migration even if validation fails", false)
|
|
58
60
|
.option("-y, --yes", "Automatically answer yes to all prompts", false)
|
|
59
61
|
.option("--config-path <path>", "Path to migration config file")
|
|
62
|
+
.option("--skip-initialization", "Skip database initialization step", false)
|
|
63
|
+
.option("--skip-sequence-sync", "Skip sequence synchronization step", false)
|
|
60
64
|
.action(async (options) => {
|
|
61
65
|
if (options.source) {
|
|
62
66
|
process.env.SOURCE_DATABASE_URL = options.source;
|
|
@@ -83,14 +87,19 @@ program
|
|
|
83
87
|
process.exit(1);
|
|
84
88
|
}
|
|
85
89
|
try {
|
|
90
|
+
if (!options.skipInitialization) {
|
|
91
|
+
console.log("Step 0: Checking database initialization...");
|
|
92
|
+
const initializer = new database_initializer_1.DatabaseInitializer(process.env.DATABASE_URL);
|
|
93
|
+
await initializer.initialize();
|
|
94
|
+
}
|
|
86
95
|
if (!options.skipValidation) {
|
|
87
|
-
console.log("Step
|
|
96
|
+
console.log("Step 1: Running pre-migration validation...");
|
|
88
97
|
const { PreMigrationValidator } = await Promise.resolve().then(() => require("./pre-migration-validator"));
|
|
89
98
|
const validator = new PreMigrationValidator();
|
|
90
99
|
const validationResult = await validator.validate();
|
|
91
100
|
if (!validationResult.success && !options.force) {
|
|
92
101
|
console.log(`Pre-migration validation found ${validationResult.issueCount} issues.`);
|
|
93
|
-
console.log(
|
|
102
|
+
console.log(JSON.stringify(validationResult, null, 2));
|
|
94
103
|
if (options.yes) {
|
|
95
104
|
console.log("Continuing with migration despite issues (--yes flag provided)");
|
|
96
105
|
}
|
|
@@ -121,7 +130,7 @@ program
|
|
|
121
130
|
}
|
|
122
131
|
}
|
|
123
132
|
if (!options.skipSchemaMigration) {
|
|
124
|
-
console.log("Step
|
|
133
|
+
console.log("Step 2: Migrating schema structure...");
|
|
125
134
|
if (options.mode === "multi-tenant") {
|
|
126
135
|
await execAsync("node dist/scripts/migrate-schema-structure.js");
|
|
127
136
|
}
|
|
@@ -150,19 +159,29 @@ program
|
|
|
150
159
|
}
|
|
151
160
|
}
|
|
152
161
|
if (!options.skipEnumSync) {
|
|
153
|
-
console.log("Step
|
|
162
|
+
console.log("Step 3: Synchronizing and fixing enum types...");
|
|
154
163
|
const { EnumSynchronizer } = await Promise.resolve().then(() => require("./sync-enum-types"));
|
|
155
164
|
const synchronizer = new EnumSynchronizer();
|
|
156
165
|
await synchronizer.synchronizeEnums();
|
|
157
166
|
console.log("Enum types synchronized successfully!");
|
|
158
|
-
console.log("Step
|
|
167
|
+
console.log("Step 3.1: Synchronizing enum values...");
|
|
159
168
|
const { EnumValueSynchronizer } = await Promise.resolve().then(() => require("./sync-enum-values"));
|
|
160
169
|
const valueSynchronizer = new EnumValueSynchronizer();
|
|
161
170
|
await valueSynchronizer.synchronizeEnumValues();
|
|
162
171
|
console.log("Enum values synchronized successfully!");
|
|
172
|
+
console.log("Step 3.2: Fixing enum values...");
|
|
173
|
+
const { EnumFixer } = await Promise.resolve().then(() => require("./fix-enum-values"));
|
|
174
|
+
const enumFixer = new EnumFixer(process.env.DATABASE_URL);
|
|
175
|
+
await enumFixer.fixEnumValues();
|
|
176
|
+
console.log("Enum values fixed successfully!");
|
|
163
177
|
}
|
|
178
|
+
console.log("Step 4: Fixing data type issues...");
|
|
179
|
+
const { DataTypeFixer } = await Promise.resolve().then(() => require("./fix-data-types"));
|
|
180
|
+
const fixer = new DataTypeFixer();
|
|
181
|
+
await fixer.fixDataTypes();
|
|
182
|
+
console.log("Data type fixing completed successfully!");
|
|
164
183
|
if (!options.skipDataMigration) {
|
|
165
|
-
console.log("Step
|
|
184
|
+
console.log("Step 5: Migrating data with transformation...");
|
|
166
185
|
const { DataMigrationTool } = await Promise.resolve().then(() => require("./data-migration/migration-tool"));
|
|
167
186
|
const { PrismaClient } = await Promise.resolve().then(() => require("@prisma/client"));
|
|
168
187
|
const { Pool } = await Promise.resolve().then(() => require("pg"));
|
|
@@ -210,30 +229,32 @@ program
|
|
|
210
229
|
await connections.targetPrisma.$disconnect();
|
|
211
230
|
}
|
|
212
231
|
}
|
|
213
|
-
console.log("Step 4: Fixing enum values...");
|
|
214
|
-
const { EnumFixer } = await Promise.resolve().then(() => require("./fix-enum-values"));
|
|
215
|
-
const enumFixer = new EnumFixer(process.env.DATABASE_URL);
|
|
216
|
-
await enumFixer.fixEnumValues();
|
|
217
|
-
console.log("Enum values fixed successfully!");
|
|
218
|
-
console.log("Step 5: Fixing data type issues...");
|
|
219
|
-
const { DataTypeFixer } = await Promise.resolve().then(() => require("./fix-data-types"));
|
|
220
|
-
const fixer = new DataTypeFixer();
|
|
221
|
-
await fixer.fixDataTypes();
|
|
222
|
-
console.log("Data type fixing completed successfully!");
|
|
223
232
|
if (!options.skipValidation) {
|
|
224
233
|
console.log("Step 6: Running post-migration validation...");
|
|
225
234
|
const { PostMigrationValidator } = await Promise.resolve().then(() => require("./post-migration-validator"));
|
|
226
235
|
const validator = new PostMigrationValidator();
|
|
227
|
-
const result = await validator.validate(
|
|
236
|
+
const result = await validator.validate({
|
|
237
|
+
publicOnly: options.mode === "public-only",
|
|
238
|
+
});
|
|
228
239
|
if (result.success) {
|
|
229
240
|
console.log("Post-migration validation successful!");
|
|
230
241
|
}
|
|
231
242
|
else {
|
|
232
243
|
console.log(`Post-migration validation found ${result.issueCount} issues.`);
|
|
233
|
-
console.log(
|
|
234
|
-
|
|
244
|
+
console.log(JSON.stringify(result, null, 2));
|
|
245
|
+
if (!options.force) {
|
|
246
|
+
console.error("Migration validation failed. Use --force to continue anyway.");
|
|
247
|
+
process.exit(1);
|
|
248
|
+
}
|
|
249
|
+
console.log("Continuing with migration despite validation issues (--force flag provided)");
|
|
235
250
|
}
|
|
236
251
|
}
|
|
252
|
+
if (!options.skipSequenceSync) {
|
|
253
|
+
console.log("Step 7: Synchronizing database sequences...");
|
|
254
|
+
const sequenceSynchronizer = new sequence_synchronizer_1.SequenceSynchronizer(process.env.DATABASE_URL);
|
|
255
|
+
await sequenceSynchronizer.synchronizeSequences();
|
|
256
|
+
console.log("Database sequences synchronized successfully!");
|
|
257
|
+
}
|
|
237
258
|
console.log("Migration process completed successfully!");
|
|
238
259
|
}
|
|
239
260
|
catch (error) {
|
|
@@ -366,7 +387,7 @@ program
|
|
|
366
387
|
}
|
|
367
388
|
else {
|
|
368
389
|
console.log(`Pre-migration validation found ${result.issueCount} issues.`);
|
|
369
|
-
console.log(
|
|
390
|
+
console.log(JSON.stringify(result, null, 2));
|
|
370
391
|
if (options.yes) {
|
|
371
392
|
console.log("Continuing with migration despite issues (--yes flag provided)");
|
|
372
393
|
process.exit(0);
|
|
@@ -450,7 +471,7 @@ program
|
|
|
450
471
|
}
|
|
451
472
|
else {
|
|
452
473
|
console.log(`Post-migration validation found ${result.issueCount} issues.`);
|
|
453
|
-
console.log(
|
|
474
|
+
console.log(JSON.stringify(result, null, 2));
|
|
454
475
|
}
|
|
455
476
|
}
|
|
456
477
|
catch (error) {
|