@mikro-orm/cli 7.0.0-dev.68 → 7.0.0-dev.69
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.
|
@@ -7,8 +7,7 @@ export class CreateDatabaseCommand {
|
|
|
7
7
|
*/
|
|
8
8
|
async handler(args) {
|
|
9
9
|
const orm = await CLIHelper.getORM(args.contextName, args.config);
|
|
10
|
-
|
|
11
|
-
await schemaGenerator.ensureDatabase();
|
|
10
|
+
await orm.schema.ensureDatabase();
|
|
12
11
|
await orm.close(true);
|
|
13
12
|
}
|
|
14
13
|
}
|
|
@@ -16,8 +16,7 @@ export class CreateSeederCommand {
|
|
|
16
16
|
async handler(args) {
|
|
17
17
|
const className = CreateSeederCommand.getSeederClassName(args.seeder);
|
|
18
18
|
const orm = await CLIHelper.getORM(args.contextName, args.config);
|
|
19
|
-
const
|
|
20
|
-
const path = await seeder.createSeeder(className);
|
|
19
|
+
const path = await orm.seeder.create(className);
|
|
21
20
|
CLIHelper.dump(colors.green(`Seeder ${args.seeder} successfully created at ${path}`));
|
|
22
21
|
await orm.close(true);
|
|
23
22
|
}
|
|
@@ -17,7 +17,7 @@ export class DatabaseSeedCommand {
|
|
|
17
17
|
async handler(args) {
|
|
18
18
|
const orm = await CLIHelper.getORM(args.contextName, args.config);
|
|
19
19
|
const className = args.class ?? orm.config.get('seeder').defaultSeeder;
|
|
20
|
-
await orm.
|
|
20
|
+
await orm.seeder.seedString(className);
|
|
21
21
|
CLIHelper.dump(colors.green(`Seeder ${className} successfully executed`));
|
|
22
22
|
await orm.close(true);
|
|
23
23
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Utils,
|
|
1
|
+
import { colors, Utils, } from '@mikro-orm/core';
|
|
2
2
|
import { CLIHelper } from '../CLIHelper.js';
|
|
3
3
|
export class MigrationCommandFactory {
|
|
4
4
|
static DESCRIPTIONS = {
|
|
@@ -80,26 +80,25 @@ export class MigrationCommandFactory {
|
|
|
80
80
|
// to be able to run have a master transaction, but run marked migrations outside of it, we need a second connection
|
|
81
81
|
const options = { pool: { min: 1, max: 2 } };
|
|
82
82
|
const orm = await CLIHelper.getORM(args.contextName, args.config, options);
|
|
83
|
-
const migrator = orm.getMigrator();
|
|
84
83
|
switch (method) {
|
|
85
84
|
case 'create':
|
|
86
|
-
await this.handleCreateCommand(migrator, args, orm.config);
|
|
85
|
+
await this.handleCreateCommand(orm.migrator, args, orm.config);
|
|
87
86
|
break;
|
|
88
87
|
case 'check':
|
|
89
|
-
await this.handleCheckCommand(migrator, orm);
|
|
88
|
+
await this.handleCheckCommand(orm.migrator, orm);
|
|
90
89
|
break;
|
|
91
90
|
case 'list':
|
|
92
|
-
await this.handleListCommand(migrator);
|
|
91
|
+
await this.handleListCommand(orm.migrator);
|
|
93
92
|
break;
|
|
94
93
|
case 'pending':
|
|
95
|
-
await this.handlePendingCommand(migrator);
|
|
94
|
+
await this.handlePendingCommand(orm.migrator);
|
|
96
95
|
break;
|
|
97
96
|
case 'up':
|
|
98
97
|
case 'down':
|
|
99
|
-
await this.handleUpDownCommand(args, migrator, method);
|
|
98
|
+
await this.handleUpDownCommand(args, orm.migrator, method);
|
|
100
99
|
break;
|
|
101
100
|
case 'fresh':
|
|
102
|
-
await this.handleFreshCommand(args, migrator, orm);
|
|
101
|
+
await this.handleFreshCommand(args, orm.migrator, orm);
|
|
103
102
|
}
|
|
104
103
|
await orm.close(true);
|
|
105
104
|
}
|
|
@@ -121,7 +120,7 @@ export class MigrationCommandFactory {
|
|
|
121
120
|
CLIHelper.dump(colors.green(message));
|
|
122
121
|
}
|
|
123
122
|
static async handlePendingCommand(migrator) {
|
|
124
|
-
const pending = await migrator.
|
|
123
|
+
const pending = await migrator.getPending();
|
|
125
124
|
CLIHelper.dumpTable({
|
|
126
125
|
columns: ['Name'],
|
|
127
126
|
rows: pending.map(row => [row.name]),
|
|
@@ -129,7 +128,7 @@ export class MigrationCommandFactory {
|
|
|
129
128
|
});
|
|
130
129
|
}
|
|
131
130
|
static async handleListCommand(migrator) {
|
|
132
|
-
const executed = await migrator.
|
|
131
|
+
const executed = await migrator.getExecuted();
|
|
133
132
|
CLIHelper.dumpTable({
|
|
134
133
|
columns: ['Name', 'Executed at'],
|
|
135
134
|
rows: executed.map(row => {
|
|
@@ -141,7 +140,7 @@ export class MigrationCommandFactory {
|
|
|
141
140
|
});
|
|
142
141
|
}
|
|
143
142
|
static async handleCreateCommand(migrator, args, config) {
|
|
144
|
-
const ret = await migrator.
|
|
143
|
+
const ret = await migrator.create(args.path, args.blank, args.initial, args.name);
|
|
145
144
|
if (ret.diff.up.length === 0) {
|
|
146
145
|
return CLIHelper.dump(colors.green(`No changes required, schema is up-to-date`));
|
|
147
146
|
}
|
|
@@ -161,7 +160,7 @@ export class MigrationCommandFactory {
|
|
|
161
160
|
CLIHelper.dump(colors.green(`${ret.fileName} successfully created`));
|
|
162
161
|
}
|
|
163
162
|
static async handleCheckCommand(migrator, orm) {
|
|
164
|
-
if (!(await migrator.
|
|
163
|
+
if (!(await migrator.checkSchema())) {
|
|
165
164
|
return CLIHelper.dump(colors.green(`No changes required, schema is up-to-date`));
|
|
166
165
|
}
|
|
167
166
|
await orm.close(true);
|
|
@@ -169,17 +168,15 @@ export class MigrationCommandFactory {
|
|
|
169
168
|
process.exit(1);
|
|
170
169
|
}
|
|
171
170
|
static async handleFreshCommand(args, migrator, orm) {
|
|
172
|
-
|
|
173
|
-
await generator.dropSchema({ dropMigrationsTable: true, dropDb: args.dropDb });
|
|
171
|
+
await orm.schema.drop({ dropMigrationsTable: true, dropDb: args.dropDb });
|
|
174
172
|
CLIHelper.dump(colors.green('Dropped schema successfully'));
|
|
175
173
|
const opts = MigrationCommandFactory.getUpDownOptions(args);
|
|
176
174
|
await migrator.up(opts);
|
|
177
175
|
const message = this.getUpDownSuccessMessage('up', opts);
|
|
178
176
|
CLIHelper.dump(colors.green(message));
|
|
179
177
|
if (args.seed !== undefined) {
|
|
180
|
-
const seeder = orm.getSeeder();
|
|
181
178
|
const seederClass = args.seed || orm.config.get('seeder').defaultSeeder;
|
|
182
|
-
await seeder.seedString(seederClass);
|
|
179
|
+
await orm.seeder.seedString(seederClass);
|
|
183
180
|
CLIHelper.dump(colors.green(`Database seeded successfully with seeder class ${seederClass}`));
|
|
184
181
|
}
|
|
185
182
|
}
|
|
@@ -80,11 +80,10 @@ export class SchemaCommandFactory {
|
|
|
80
80
|
return CLIHelper.showHelp();
|
|
81
81
|
}
|
|
82
82
|
const orm = await CLIHelper.getORM(args.contextName, args.config);
|
|
83
|
-
const generator = orm.getSchemaGenerator();
|
|
84
83
|
const params = { wrap: args.fkChecks == null ? undefined : !args.fkChecks, ...args };
|
|
85
84
|
if (args.dump) {
|
|
86
85
|
const m = `get${method.substr(0, 1).toUpperCase()}${method.substr(1)}SchemaSQL`;
|
|
87
|
-
const dump = await
|
|
86
|
+
const dump = await orm.schema[m](params);
|
|
88
87
|
/* v8 ignore next 3 */
|
|
89
88
|
if (dump) {
|
|
90
89
|
CLIHelper.dump(dump, orm.config);
|
|
@@ -95,16 +94,13 @@ export class SchemaCommandFactory {
|
|
|
95
94
|
}
|
|
96
95
|
}
|
|
97
96
|
else if (method === 'fresh') {
|
|
98
|
-
await
|
|
99
|
-
await generator.createSchema(params);
|
|
97
|
+
await orm.schema.refresh(params);
|
|
100
98
|
}
|
|
101
99
|
else {
|
|
102
|
-
|
|
103
|
-
await generator[m](params);
|
|
100
|
+
await orm.schema[method](params);
|
|
104
101
|
}
|
|
105
102
|
if (typeof args.seed !== 'undefined') {
|
|
106
|
-
|
|
107
|
-
await seeder.seedString(args.seed || orm.config.get('seeder').defaultSeeder);
|
|
103
|
+
await orm.seeder.seedString(args.seed || orm.config.get('seeder').defaultSeeder);
|
|
108
104
|
}
|
|
109
105
|
CLIHelper.dump(colors.green(successMessage));
|
|
110
106
|
await orm.close(true);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikro-orm/cli",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "7.0.0-dev.
|
|
4
|
+
"version": "7.0.0-dev.69",
|
|
5
5
|
"description": "TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, PostgreSQL and SQLite databases as well as usage with vanilla JavaScript.",
|
|
6
6
|
"exports": {
|
|
7
7
|
"./package.json": "./package.json",
|
|
@@ -53,8 +53,9 @@
|
|
|
53
53
|
"access": "public"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@mikro-orm/core": "7.0.0-dev.
|
|
57
|
-
"@mikro-orm/knex": "7.0.0-dev.
|
|
56
|
+
"@mikro-orm/core": "7.0.0-dev.69",
|
|
57
|
+
"@mikro-orm/knex": "7.0.0-dev.69",
|
|
58
|
+
"mikro-orm": "7.0.0-dev.69",
|
|
58
59
|
"yargs": "17.7.2"
|
|
59
60
|
},
|
|
60
61
|
"devDependencies": {
|