@biorate/migrations 1.163.0 → 1.165.0

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.
Files changed (90) hide show
  1. package/.nyc_output/5dd7a2aa-147b-4304-84bf-effac0f982fd.json +1 -0
  2. package/.nyc_output/f0726e72-3148-4051-b1f5-0768a33e5118.json +1 -0
  3. package/.nyc_output/processinfo/5dd7a2aa-147b-4304-84bf-effac0f982fd.json +1 -0
  4. package/.nyc_output/processinfo/8ed41da4-40ec-49dc-8dbc-0ebaa3847e76.json +1 -0
  5. package/.nyc_output/processinfo/f0726e72-3148-4051-b1f5-0768a33e5118.json +1 -0
  6. package/.nyc_output/processinfo/index.json +1 -1
  7. package/CHANGELOG.md +446 -0
  8. package/coverage/{lcov-report/block-navigation.js → block-navigation.js} +1 -1
  9. package/coverage/clover.xml +240 -0
  10. package/coverage/coverage-final.json +20 -0
  11. package/coverage/index.html +206 -0
  12. package/coverage/{lcov-report/sorter.js → sorter.js} +21 -7
  13. package/coverage/{lcov-report/src/index.ts.html → src/errors.ts.html} +24 -27
  14. package/coverage/{lcov-report/src → src}/index.html +20 -35
  15. package/coverage/{lcov-report/src/default.config.ts.html → src/root.ts.html} +160 -16
  16. package/coverage/{lcov-report/src → src}/types/amqp.ts.html +6 -6
  17. package/coverage/{lcov-report/src → src}/types/clickhouse.ts.html +8 -8
  18. package/coverage/{lcov-report/src → src}/types/index.html +59 -44
  19. package/coverage/{lcov-report/src → src}/types/index.ts.html +17 -14
  20. package/coverage/{lcov-report/src → src}/types/kafka.ts.html +7 -7
  21. package/coverage/{lcov-report/src → src}/types/migration.ts.html +25 -25
  22. package/coverage/{lcov-report/src → src}/types/minio.ts.html +6 -6
  23. package/coverage/{lcov-report/src → src}/types/mongodb.ts.html +12 -12
  24. package/coverage/src/types/schema-registry.ts.html +250 -0
  25. package/coverage/{lcov-report/src → src}/types/sequelize.ts.html +9 -9
  26. package/coverage/tests/__mocks__/index.html +116 -0
  27. package/coverage/tests/__mocks__/index.ts.html +427 -0
  28. package/coverage/tests/migrations/amqp/test/00001_create-test.js.html +94 -0
  29. package/coverage/tests/migrations/amqp/test/00002_delete-test.js.html +94 -0
  30. package/coverage/{lcov-report/src/migrations → tests/migrations/amqp/test}/index.html +24 -39
  31. package/coverage/tests/migrations/kafka/admin/00001_create-test.js.html +109 -0
  32. package/coverage/tests/migrations/kafka/admin/00002_delete-test.js.html +100 -0
  33. package/coverage/{lcov-report/file:/www/biorate/core/packages/@biorate/migrations/src → tests/migrations/kafka/admin}/index.html +24 -54
  34. package/coverage/{lcov-report/src/migrations/index.ts.html → tests/migrations/minio/minio/00001_create-test.js.html} +19 -16
  35. package/coverage/tests/migrations/minio/minio/00002_delete-test.js.html +94 -0
  36. package/coverage/{lcov-report → tests/migrations/minio/minio}/index.html +39 -39
  37. package/coverage/tests/migrations/mongodb/mongodb/00001_create-index-test.js.html +91 -0
  38. package/coverage/tests/migrations/mongodb/mongodb/index.html +116 -0
  39. package/dist/src/default.config.js +0 -56
  40. package/dist/src/default.config.js.map +1 -1
  41. package/dist/src/root.js +84 -5
  42. package/dist/src/root.js.map +1 -1
  43. package/dist/src/types/amqp.js +1 -1
  44. package/dist/src/types/amqp.js.map +1 -1
  45. package/dist/src/types/clickhouse.js +1 -1
  46. package/dist/src/types/clickhouse.js.map +1 -1
  47. package/dist/src/types/kafka.js +1 -1
  48. package/dist/src/types/kafka.js.map +1 -1
  49. package/dist/src/types/migration.js +3 -3
  50. package/dist/src/types/migration.js.map +1 -1
  51. package/dist/src/types/minio.js +2 -2
  52. package/dist/src/types/minio.js.map +1 -1
  53. package/dist/src/types/mongodb.js +2 -2
  54. package/dist/src/types/mongodb.js.map +1 -1
  55. package/dist/src/types/schema-registry.js +4 -5
  56. package/dist/src/types/schema-registry.js.map +1 -1
  57. package/dist/src/types/sequelize.js +1 -1
  58. package/dist/src/types/sequelize.js.map +1 -1
  59. package/dist/tsconfig.build.tsbuildinfo +1 -1
  60. package/package.json +22 -22
  61. package/src/default.config.ts +1 -61
  62. package/src/root.ts +63 -6
  63. package/src/types/mongodb.ts +5 -5
  64. package/.nyc_output/9ef56dd7-8cf1-45e6-998d-31fcb8488a29.json +0 -1
  65. package/.nyc_output/processinfo/005b363d-a174-413f-a746-66dd7facd615.json +0 -1
  66. package/.nyc_output/processinfo/9ef56dd7-8cf1-45e6-998d-31fcb8488a29.json +0 -1
  67. package/coverage/lcov-report/file:/www/biorate/core/packages/@biorate/migrations/src/default.config.ts.html +0 -118
  68. package/coverage/lcov-report/file:/www/biorate/core/packages/@biorate/migrations/src/errors.ts.html +0 -118
  69. package/coverage/lcov-report/file:/www/biorate/core/packages/@biorate/migrations/src/index.ts.html +0 -118
  70. package/coverage/lcov-report/file:/www/biorate/core/packages/@biorate/migrations/src/root.ts.html +0 -118
  71. package/coverage/lcov-report/src/migrations/migrations.ts.html +0 -199
  72. package/coverage/lcov-report/src/migrations/sequelize.ts.html +0 -211
  73. package/coverage/lcov-report/src/root.ts.html +0 -205
  74. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/amqp.ts.html +0 -118
  75. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/clickhouse.ts.html +0 -118
  76. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/index.html +0 -236
  77. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/index.ts.html +0 -118
  78. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/kafka.ts.html +0 -118
  79. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/migration.ts.html +0 -118
  80. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/minio.ts.html +0 -118
  81. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/mongodb.ts.html +0 -118
  82. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/schema-registry.ts.html +0 -118
  83. package/coverage/lcov-report/types/file:/www/biorate/core/packages/@biorate/migrations/src/types/sequelize.ts.html +0 -118
  84. package/coverage/lcov.info +0 -399
  85. /package/.nyc_output/{005b363d-a174-413f-a746-66dd7facd615.json → 8ed41da4-40ec-49dc-8dbc-0ebaa3847e76.json} +0 -0
  86. /package/coverage/{lcov-report/base.css → base.css} +0 -0
  87. /package/coverage/{lcov-report/favicon.png → favicon.png} +0 -0
  88. /package/coverage/{lcov-report/prettify.css → prettify.css} +0 -0
  89. /package/coverage/{lcov-report/prettify.js → prettify.js} +0 -0
  90. /package/coverage/{lcov-report/sort-arrow-sprite.png → sort-arrow-sprite.png} +0 -0
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@biorate/migrations",
3
- "version": "1.163.0",
3
+ "version": "1.165.0",
4
4
  "description": "Migrations tools",
5
- "main": "dist",
5
+ "main": "dist/index.js",
6
6
  "scripts": {
7
7
  "build": "npx tsc -p ./tsconfig.build.json --outDir ./dist",
8
- "test": "npx nyc --reporter=lcov --reporter=text-summary -- npx mocha --exit -r ts-node/register tests/**/*.spec.ts",
8
+ "test": "npx vitest run --coverage",
9
9
  "prepublishOnly": "pnpm run build"
10
10
  },
11
11
  "repository": {
@@ -23,24 +23,24 @@
23
23
  "author": "llevkin",
24
24
  "license": "MIT",
25
25
  "dependencies": {
26
- "@biorate/amqp": "1.156.2",
27
- "@biorate/clickhouse": "1.156.2",
28
- "@biorate/config": "1.156.2",
29
- "@biorate/config-loader": "1.156.2",
30
- "@biorate/config-loader-env": "1.158.0",
31
- "@biorate/config-loader-fs": "1.156.2",
32
- "@biorate/config-loader-vault": "1.156.2",
33
- "@biorate/connector": "1.156.2",
34
- "@biorate/errors": "1.102.0",
35
- "@biorate/inversion": "1.156.2",
36
- "@biorate/kafkajs": "1.156.2",
37
- "@biorate/minio": "1.156.2",
38
- "@biorate/mongodb": "1.156.2",
39
- "@biorate/proxy": "1.156.2",
40
- "@biorate/schema-registry": "1.163.0",
41
- "@biorate/sequelize": "1.156.2",
42
- "@biorate/tools": "1.102.1",
43
- "@biorate/vault": "1.156.2"
26
+ "@biorate/amqp": "1.158.0",
27
+ "@biorate/clickhouse": "1.158.0",
28
+ "@biorate/config": "2.1.0",
29
+ "@biorate/config-loader": "1.158.0",
30
+ "@biorate/config-loader-env": "1.160.0",
31
+ "@biorate/config-loader-fs": "1.158.0",
32
+ "@biorate/config-loader-vault": "1.158.0",
33
+ "@biorate/connector": "2.1.0",
34
+ "@biorate/errors": "2.1.0",
35
+ "@biorate/inversion": "2.1.0",
36
+ "@biorate/kafkajs": "1.158.0",
37
+ "@biorate/minio": "1.158.0",
38
+ "@biorate/mongodb": "1.158.0",
39
+ "@biorate/proxy": "1.158.0",
40
+ "@biorate/schema-registry": "2.1.0",
41
+ "@biorate/sequelize": "1.158.0",
42
+ "@biorate/tools": "2.1.0",
43
+ "@biorate/vault": "1.158.0"
44
44
  },
45
- "gitHead": "cda7045a715bdb95b6b1d4962e957f9eb30d9450"
45
+ "gitHead": "0126537d1b25654e1216019fb9f25cf248aac213"
46
46
  }
@@ -1,64 +1,4 @@
1
- import { container, Types } from '@biorate/inversion';
2
- import { IConfig, Config } from '@biorate/config';
3
- import { ConfigLoader } from '@biorate/config-loader';
4
- import { ConfigLoaderEnv } from '@biorate/config-loader-env';
5
- import { ConfigLoaderFs } from '@biorate/config-loader-fs';
6
- import { ConfigLoaderVault } from '@biorate/config-loader-vault';
7
- import { IVaultConnector, VaultConnector } from '@biorate/vault';
8
- import { ISequelizeConnector, SequelizeConnector } from '@biorate/sequelize';
9
- import { IMinioConnector, MinioConnector } from '@biorate/minio';
10
- import { IMongoDBConnector, MongoDBConnector } from '@biorate/mongodb';
11
- import { IClickhouseConnector, ClickhouseConnector } from '@biorate/clickhouse';
12
- import { IAmqpConnector, AmqpConnector } from '@biorate/amqp';
13
- import { IKafkaJSAdminConnector, KafkaJSAdminConnector } from '@biorate/kafkajs';
14
- import { IProxyConnector, ProxyConnector } from '@biorate/proxy';
15
- import {
16
- ISchemaRegistryConnector,
17
- SchemaRegistryConnector,
18
- } from '@biorate/schema-registry';
1
+ import { container } from '@biorate/inversion';
19
2
  import { Root } from './';
20
- import * as Migrations from './types';
21
3
 
22
- container.bind<IConfig>(Types.Config).to(Config).inSingletonScope();
23
- container
24
- .bind<ConfigLoader>(Types.ConfigLoaderEnv)
25
- .to(ConfigLoaderEnv)
26
- .inSingletonScope();
27
- container.bind<ConfigLoader>(Types.ConfigLoaderFs).to(ConfigLoaderFs).inSingletonScope();
28
- container
29
- .bind<ConfigLoader>(Types.ConfigLoaderVault)
30
- .to(ConfigLoaderVault)
31
- .inSingletonScope();
32
- container.bind<IVaultConnector>(Types.Vault).to(VaultConnector).inSingletonScope();
33
- container
34
- .bind<ISequelizeConnector>(Types.Sequelize)
35
- .to(SequelizeConnector)
36
- .inSingletonScope();
37
- container.bind<IMinioConnector>(Types.Minio).to(MinioConnector).inSingletonScope();
38
- container.bind<IMongoDBConnector>(Types.Mongodb).to(MongoDBConnector).inSingletonScope();
39
- container
40
- .bind<IClickhouseConnector>(Types.Clickhouse)
41
- .to(ClickhouseConnector)
42
- .inSingletonScope();
43
- container.bind<IAmqpConnector>(Types.Amqp).to(AmqpConnector).inSingletonScope();
44
- container
45
- .bind<IKafkaJSAdminConnector>(Types.Kafka)
46
- .to(KafkaJSAdminConnector)
47
- .inSingletonScope();
48
- container.bind<IProxyConnector>(Types.Proxy).to(ProxyConnector).inSingletonScope();
49
- container
50
- .bind<ISchemaRegistryConnector>(Types.SchemaRegistry)
51
- .to(SchemaRegistryConnector)
52
- .inSingletonScope();
53
- container.bind<Migrations.Sequelize>(Migrations.Sequelize).toSelf().inSingletonScope();
54
- container.bind<Migrations.Minio>(Migrations.Minio).toSelf().inSingletonScope();
55
- container.bind<Migrations.Mongodb>(Migrations.Mongodb).toSelf().inSingletonScope();
56
- container.bind<Migrations.Kafka>(Migrations.Kafka).toSelf().inSingletonScope();
57
- container.bind<Migrations.Clickhouse>(Migrations.Clickhouse).toSelf().inSingletonScope();
58
- container.bind<Migrations.Amqp>(Migrations.Amqp).toSelf().inSingletonScope();
59
- container
60
- .bind<Migrations.SchemaRegistry>(Migrations.SchemaRegistry)
61
- .toSelf()
62
- .inSingletonScope();
63
- container.bind<Root>(Root).toSelf().inSingletonScope();
64
4
  container.get<Root>(Root).$run().catch(console.error);
package/src/root.ts CHANGED
@@ -1,12 +1,26 @@
1
- import { init, injectable, inject, Types, Core } from '@biorate/inversion';
2
- import { IConfig } from '@biorate/config';
1
+ import { EventEmitter } from 'events';
2
+ import { init, injectable, inject, Types, Core, container } from '@biorate/inversion';
3
+ import { Config, IConfig } from '@biorate/config';
3
4
  import { ConfigLoader } from '@biorate/config-loader';
4
- import { IVaultConnector } from '@biorate/vault';
5
- import { IProxyConnector } from '@biorate/proxy';
5
+ import { IVaultConnector, VaultConnector } from '@biorate/vault';
6
+ import { IProxyConnector, ProxyConnector } from '@biorate/proxy';
6
7
  import * as Migrations from './types';
8
+ import { ConfigLoaderEnv } from '@biorate/config-loader-env';
9
+ import { ConfigLoaderFs } from '@biorate/config-loader-fs';
10
+ import { ConfigLoaderVault } from '@biorate/config-loader-vault';
11
+ import { ISequelizeConnector, SequelizeConnector } from '@biorate/sequelize';
12
+ import { IMinioConnector, MinioConnector } from '@biorate/minio';
13
+ import { IMongoDBConnector, MongoDBConnector } from '@biorate/mongodb';
14
+ import { ClickhouseConnector, IClickhouseConnector } from '@biorate/clickhouse';
15
+ import { AmqpConnector, IAmqpConnector } from '@biorate/amqp';
16
+ import { IKafkaJSAdminConnector, KafkaJSAdminConnector } from '@biorate/kafkajs';
17
+ import {
18
+ ISchemaRegistryConnector,
19
+ SchemaRegistryConnector,
20
+ } from '@biorate/schema-registry';
7
21
 
8
22
  @injectable()
9
- export class Root extends Core() {
23
+ export class Root extends Core(EventEmitter) {
10
24
  @inject(Types.Config) public readonly config: IConfig;
11
25
 
12
26
  @inject(Types.ConfigLoaderEnv) public readonly configLoaderEnv: ConfigLoader;
@@ -35,9 +49,52 @@ export class Root extends Core() {
35
49
  public readonly schemaRegistry: Migrations.SchemaRegistry;
36
50
 
37
51
  @init() protected async initialize() {
38
- process.exit();
52
+ this.emit('end')
39
53
  }
40
54
  }
41
55
 
42
56
  // @ts-ignore
43
57
  Core.log = null;
58
+
59
+ container.bind<IConfig>(Types.Config).to(Config).inSingletonScope();
60
+ container
61
+ .bind<ConfigLoader>(Types.ConfigLoaderEnv)
62
+ .to(ConfigLoaderEnv)
63
+ .inSingletonScope();
64
+ container.bind<ConfigLoader>(Types.ConfigLoaderFs).to(ConfigLoaderFs).inSingletonScope();
65
+ container
66
+ .bind<ConfigLoader>(Types.ConfigLoaderVault)
67
+ .to(ConfigLoaderVault)
68
+ .inSingletonScope();
69
+ container.bind<IVaultConnector>(Types.Vault).to(VaultConnector).inSingletonScope();
70
+ container
71
+ .bind<ISequelizeConnector>(Types.Sequelize)
72
+ .to(SequelizeConnector)
73
+ .inSingletonScope();
74
+ container.bind<IMinioConnector>(Types.Minio).to(MinioConnector).inSingletonScope();
75
+ container.bind<IMongoDBConnector>(Types.Mongodb).to(MongoDBConnector).inSingletonScope();
76
+ container
77
+ .bind<IClickhouseConnector>(Types.Clickhouse)
78
+ .to(ClickhouseConnector)
79
+ .inSingletonScope();
80
+ container.bind<IAmqpConnector>(Types.Amqp).to(AmqpConnector).inSingletonScope();
81
+ container
82
+ .bind<IKafkaJSAdminConnector>(Types.Kafka)
83
+ .to(KafkaJSAdminConnector)
84
+ .inSingletonScope();
85
+ container.bind<IProxyConnector>(Types.Proxy).to(ProxyConnector).inSingletonScope();
86
+ container
87
+ .bind<ISchemaRegistryConnector>(Types.SchemaRegistry)
88
+ .to(SchemaRegistryConnector)
89
+ .inSingletonScope();
90
+ container.bind<Migrations.Sequelize>(Migrations.Sequelize).toSelf().inSingletonScope();
91
+ container.bind<Migrations.Minio>(Migrations.Minio).toSelf().inSingletonScope();
92
+ container.bind<Migrations.Mongodb>(Migrations.Mongodb).toSelf().inSingletonScope();
93
+ container.bind<Migrations.Kafka>(Migrations.Kafka).toSelf().inSingletonScope();
94
+ container.bind<Migrations.Clickhouse>(Migrations.Clickhouse).toSelf().inSingletonScope();
95
+ container.bind<Migrations.Amqp>(Migrations.Amqp).toSelf().inSingletonScope();
96
+ container
97
+ .bind<Migrations.SchemaRegistry>(Migrations.SchemaRegistry)
98
+ .toSelf()
99
+ .inSingletonScope();
100
+ container.bind<Root>(Root).toSelf().inSingletonScope();
@@ -16,11 +16,6 @@ export class Mongodb extends Migration {
16
16
  async (config, connection, paths) =>
17
17
  await this.forEachPath(paths, async (file, name) => {
18
18
  try {
19
- await connection
20
- .collection<{ _id: string }>(
21
- this.config.get<string>('migrations.tableName', 'migrations'),
22
- )
23
- .insertOne({ _id: name });
24
19
  await (
25
20
  require(file) as (
26
21
  connection: IMongoDBConnection,
@@ -28,6 +23,11 @@ export class Mongodb extends Migration {
28
23
  globalConfig: IConfig,
29
24
  ) => Promise<void>
30
25
  )(connection, config, this.config);
26
+ await connection
27
+ .collection<{ _id: string }>(
28
+ this.config.get<string>('migrations.tableName', 'migrations'),
29
+ )
30
+ .insertOne({ _id: name });
31
31
  this.log(config.name, name);
32
32
  } catch (e) {}
33
33
  }),