@contember/engine-server 1.1.0-alpha.1 → 1.1.0-alpha.4

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 (93) hide show
  1. package/alpine.dockerfile +3 -1
  2. package/debian.dockerfile +3 -1
  3. package/dist/src/MasterContainer.d.ts +104 -8
  4. package/dist/src/MasterContainer.d.ts.map +1 -1
  5. package/dist/src/MasterContainer.js +65 -84
  6. package/dist/src/MasterContainer.js.map +1 -1
  7. package/dist/src/bootstrap/Initializer.d.ts +3 -12
  8. package/dist/src/bootstrap/Initializer.d.ts.map +1 -1
  9. package/dist/src/bootstrap/Initializer.js +8 -24
  10. package/dist/src/bootstrap/Initializer.js.map +1 -1
  11. package/dist/src/config/config.d.ts +7 -49
  12. package/dist/src/config/config.d.ts.map +1 -1
  13. package/dist/src/config/config.js +11 -188
  14. package/dist/src/config/config.js.map +1 -1
  15. package/dist/src/config/configSchema.d.ts +84 -0
  16. package/dist/src/config/configSchema.d.ts.map +1 -0
  17. package/dist/src/config/configSchema.js +80 -0
  18. package/dist/src/config/configSchema.js.map +1 -0
  19. package/dist/src/config/configTemplate.d.ts +2 -0
  20. package/dist/src/config/configTemplate.d.ts.map +1 -0
  21. package/dist/src/config/configTemplate.js +62 -0
  22. package/dist/src/config/configTemplate.js.map +1 -0
  23. package/dist/src/config/projectConfigResolver.d.ts +8 -0
  24. package/dist/src/config/projectConfigResolver.d.ts.map +1 -0
  25. package/dist/src/config/projectConfigResolver.js +63 -0
  26. package/dist/src/config/projectConfigResolver.js.map +1 -0
  27. package/dist/src/config/tenantConfigResolver.d.ts +8 -0
  28. package/dist/src/config/tenantConfigResolver.d.ts.map +1 -0
  29. package/dist/src/config/tenantConfigResolver.js +31 -0
  30. package/dist/src/config/tenantConfigResolver.js.map +1 -0
  31. package/dist/src/http/CollectHttpMetricsMiddelware.d.ts +2 -2
  32. package/dist/src/http/CollectHttpMetricsMiddelware.d.ts.map +1 -1
  33. package/dist/src/http/CollectHttpMetricsMiddelware.js +6 -5
  34. package/dist/src/http/CollectHttpMetricsMiddelware.js.map +1 -1
  35. package/dist/src/project/ProjectContainer.d.ts +14 -16
  36. package/dist/src/project/ProjectContainer.d.ts.map +1 -1
  37. package/dist/src/project/ProjectContainer.js +17 -12
  38. package/dist/src/project/ProjectContainer.js.map +1 -1
  39. package/dist/src/project/ProjectContainerResolver.d.ts +12 -10
  40. package/dist/src/project/ProjectContainerResolver.d.ts.map +1 -1
  41. package/dist/src/project/ProjectContainerResolver.js +26 -33
  42. package/dist/src/project/ProjectContainerResolver.js.map +1 -1
  43. package/dist/src/project/{ProjectGroupState.d.ts → ProjectContainerStore.d.ts} +2 -2
  44. package/dist/src/project/ProjectContainerStore.d.ts.map +1 -0
  45. package/dist/src/project/{ProjectGroupState.js → ProjectContainerStore.js} +4 -4
  46. package/dist/src/project/ProjectContainerStore.js.map +1 -0
  47. package/dist/src/project/ProjectInitializer.d.ts +3 -3
  48. package/dist/src/project/ProjectInitializer.d.ts.map +1 -1
  49. package/dist/src/project/ProjectInitializer.js +4 -4
  50. package/dist/src/project/ProjectInitializer.js.map +1 -1
  51. package/dist/src/project/ProjectSchemaResolver.d.ts +3 -3
  52. package/dist/src/project/ProjectSchemaResolver.d.ts.map +1 -1
  53. package/dist/src/project/ProjectSchemaResolver.js +5 -5
  54. package/dist/src/project/ProjectSchemaResolver.js.map +1 -1
  55. package/dist/src/projectGroup/ProjectGroupContainer.d.ts +23 -0
  56. package/dist/src/projectGroup/ProjectGroupContainer.d.ts.map +1 -0
  57. package/dist/src/projectGroup/ProjectGroupContainer.js +64 -0
  58. package/dist/src/projectGroup/ProjectGroupContainer.js.map +1 -0
  59. package/dist/src/projectGroup/ProjectGroupContainerResolver.d.ts +12 -0
  60. package/dist/src/projectGroup/ProjectGroupContainerResolver.d.ts.map +1 -0
  61. package/dist/src/projectGroup/ProjectGroupContainerResolver.js +36 -0
  62. package/dist/src/projectGroup/ProjectGroupContainerResolver.js.map +1 -0
  63. package/dist/src/start.js +9 -8
  64. package/dist/src/start.js.map +1 -1
  65. package/dist/src/tsconfig.tsbuildinfo +1 -1
  66. package/dist/src/utils/dbMetrics.d.ts +6 -2
  67. package/dist/src/utils/dbMetrics.d.ts.map +1 -1
  68. package/dist/src/utils/dbMetrics.js +13 -16
  69. package/dist/src/utils/dbMetrics.js.map +1 -1
  70. package/dist/tests/cases/http.js +30 -19
  71. package/dist/tests/cases/http.js.map +1 -1
  72. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  73. package/package.json +22 -21
  74. package/src/MasterContainer.ts +145 -204
  75. package/src/bootstrap/Initializer.ts +9 -34
  76. package/src/config/config.ts +23 -234
  77. package/src/config/configSchema.ts +114 -0
  78. package/src/config/configTemplate.ts +58 -0
  79. package/src/config/projectConfigResolver.ts +83 -0
  80. package/src/config/tenantConfigResolver.ts +41 -0
  81. package/src/http/CollectHttpMetricsMiddelware.ts +6 -5
  82. package/src/project/ProjectContainer.ts +25 -18
  83. package/src/project/ProjectContainerResolver.ts +29 -37
  84. package/src/project/{ProjectGroupState.ts → ProjectContainerStore.ts} +1 -1
  85. package/src/project/ProjectInitializer.ts +5 -9
  86. package/src/project/ProjectSchemaResolver.ts +6 -10
  87. package/src/projectGroup/ProjectGroupContainer.ts +120 -0
  88. package/src/projectGroup/ProjectGroupContainerResolver.ts +47 -0
  89. package/src/start.ts +9 -8
  90. package/src/utils/dbMetrics.ts +19 -20
  91. package/tests/cases/http.ts +35 -22
  92. package/dist/src/project/ProjectGroupState.d.ts.map +0 -1
  93. package/dist/src/project/ProjectGroupState.js.map +0 -1
@@ -1,9 +1,13 @@
1
1
  import prom from 'prom-client';
2
2
  import { Connection } from '@contember/database';
3
+ declare const labelNames: ("contember_project" | "contember_module" | "contember_project_group")[];
4
+ declare type LabelNames = typeof labelNames[number];
5
+ declare type Labels = {
6
+ [K in LabelNames]: string;
7
+ };
3
8
  declare type DatabaseMetricsEntry = {
4
9
  connection: Connection.PoolStatusProvider & Connection.Queryable;
5
- module: string;
6
- project: string;
10
+ labels: Labels;
7
11
  };
8
12
  declare type Unregistrar = () => void;
9
13
  declare type DatabaseMetricsRegistrar = (entry: DatabaseMetricsEntry) => Unregistrar;
@@ -1 +1 @@
1
- {"version":3,"file":"dbMetrics.d.ts","sourceRoot":"","sources":["../../../src/utils/dbMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAgB,MAAM,qBAAqB,CAAA;AAE9D,aAAK,oBAAoB,GAAG;IAC3B,UAAU,EAAE,UAAU,CAAC,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAA;IAChE,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CACf,CAAA;AACD,aAAK,WAAW,GAAG,MAAM,IAAI,CAAA;AAC7B,aAAK,wBAAwB,GAAG,CAAC,KAAK,EAAE,oBAAoB,KAAK,WAAW,CAAA;AAE5E,eAAO,MAAM,wBAAwB,aAAc,KAAK,QAAQ,KAAG,wBAqBlE,CAAA"}
1
+ {"version":3,"file":"dbMetrics.d.ts","sourceRoot":"","sources":["../../../src/utils/dbMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAgB,MAAM,qBAAqB,CAAA;AAE9D,QAAA,MAAM,UAAU,0EAAkG,CAAA;AAClH,aAAK,UAAU,GAAG,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;AAC3C,aAAK,MAAM,GAAG;KAAG,CAAC,IAAI,UAAU,GAAG,MAAM;CAAE,CAAA;AAC3C,aAAK,oBAAoB,GAAG;IAC3B,UAAU,EAAE,UAAU,CAAC,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAA;IAChE,MAAM,EAAE,MAAM,CAAA;CACd,CAAA;AACD,aAAK,WAAW,GAAG,MAAM,IAAI,CAAA;AAC7B,aAAK,wBAAwB,GAAG,CAAC,KAAK,EAAE,oBAAoB,KAAK,WAAW,CAAA;AAE5E,eAAO,MAAM,wBAAwB,aAAc,KAAK,QAAQ,KAAG,wBAkBlE,CAAA"}
@@ -6,22 +6,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createDbMetricsRegistrar = void 0;
7
7
  const prom_client_1 = __importDefault(require("prom-client"));
8
8
  const database_1 = require("@contember/database");
9
+ const labelNames = ['contember_project', 'contember_module', 'contember_project_group'];
9
10
  const createDbMetricsRegistrar = (registry) => {
10
11
  const dbPoolCollectorInner = createSingleDbPoolMetricsCollector(registry);
11
12
  const entries = new Set();
12
13
  const collector = () => {
13
14
  for (const entry of entries) {
14
- dbPoolCollectorInner(entry.connection, { contember_module: entry.module, contember_project: entry.project });
15
+ dbPoolCollectorInner(entry.connection, entry.labels);
15
16
  }
16
17
  };
17
18
  registry.registerCollector(collector);
18
19
  const sqlMetricsRegistrar = createSqlMetricsRegistrar(registry);
19
20
  return entry => {
20
21
  entries.add(entry);
21
- const sqlMetricsUnregistrar = sqlMetricsRegistrar(entry.connection, {
22
- contember_module: entry.module,
23
- contember_project: entry.project,
24
- });
22
+ const sqlMetricsUnregistrar = sqlMetricsRegistrar(entry.connection, entry.labels);
25
23
  return () => {
26
24
  entries.delete(entry);
27
25
  sqlMetricsUnregistrar();
@@ -30,30 +28,29 @@ const createDbMetricsRegistrar = (registry) => {
30
28
  };
31
29
  exports.createDbMetricsRegistrar = createDbMetricsRegistrar;
32
30
  const createSingleDbPoolMetricsCollector = (registry) => {
33
- const labelNames = ['contember_project', 'contember_module'];
34
31
  const totalCount = new prom_client_1.default.Gauge({
35
32
  registers: [registry],
36
33
  name: `contember_db_pool_total_count`,
37
34
  help: 'The total number of clients existing within the pool by contember_module (tenant or content; system is not used since it uses the same connection) and contember_project for contember_module=content.',
38
- labelNames: labelNames,
35
+ labelNames,
39
36
  });
40
37
  const idleCount = new prom_client_1.default.Gauge({
41
38
  registers: [registry],
42
39
  name: `contember_db_pool_idle_count`,
43
40
  help: 'The number of clients which are not checked out but are currently idle in the pool by contember_module (tenant or content; system is not used since it uses the same connection) and contember_project for contember_module=content.',
44
- labelNames: labelNames,
41
+ labelNames,
45
42
  });
46
43
  const waitingCount = new prom_client_1.default.Gauge({
47
44
  registers: [registry],
48
45
  name: `contember_db_pool_waiting_count`,
49
46
  help: 'The number of queued requests waiting on a client when all clients are checked out. It can be helpful to monitor this number to see if you need to adjust the size of the pool by contember_module (tenant or content; system is not used since it uses the same connection) and contember_project for contember_module=content.',
50
- labelNames: labelNames,
47
+ labelNames,
51
48
  });
52
49
  const maxCount = new prom_client_1.default.Gauge({
53
50
  registers: [registry],
54
51
  name: `contember_db_pool_max_count`,
55
52
  help: 'Maximum number of clients the pool should contain by contember_module (tenant or content; system is not used since it uses the same connection) and contember_project for contember_module=content.',
56
- labelNames: labelNames,
53
+ labelNames,
57
54
  });
58
55
  return (db, labels) => {
59
56
  const poolInfo = db.getPoolStatus();
@@ -68,26 +65,26 @@ const createSqlMetricsRegistrar = (registry) => {
68
65
  name: 'contember_sql_duration_ms',
69
66
  help: 'Executed SQL queries by contember_module (system, tenant, content or unknown) and contember_project (or "unknown" for unknown project)',
70
67
  registers: [registry],
71
- labelNames: ['contember_project', 'contember_module'],
68
+ labelNames,
72
69
  buckets: [1, 2, 5, 10, 25, 50, 100, 250, 500, 1000],
73
70
  });
74
71
  const sqlErrorRate = new prom_client_1.default.Counter({
75
72
  name: 'contember_sql_error_count',
76
73
  help: 'Failed SQL queries by contember_module (system, tenant, content or unknown) and contember_project (or "unknown" for unknown project)',
77
- labelNames: ['contember_project', 'contember_module'],
74
+ labelNames,
78
75
  registers: [registry],
79
76
  });
80
77
  return (connection, labels) => {
81
78
  const queryEndCallback = ({ meta }, { timing }) => {
82
79
  sqlDuration.observe({
83
- contember_module: labels.contember_module || meta.module || 'unknown',
84
- contember_project: labels.contember_project || 'unknown',
80
+ ...labels,
81
+ contember_module: meta.module || labels.contember_module,
85
82
  }, timing ? timing.selfDuration / 1000 : 0);
86
83
  };
87
84
  const queryErrorCallback = ({ meta }) => {
88
85
  sqlErrorRate.inc({
89
- contember_module: labels.contember_module || meta.module || 'unknown',
90
- contember_project: labels.contember_project || 'unknown',
86
+ ...labels,
87
+ contember_module: meta.module || labels.contember_module,
91
88
  });
92
89
  };
93
90
  connection.eventManager.on(database_1.EventManager.Event.queryEnd, queryEndCallback);
@@ -1 +1 @@
1
- {"version":3,"file":"dbMetrics.js","sourceRoot":"","sources":["../../../src/utils/dbMetrics.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA8B;AAC9B,kDAA8D;AAUvD,MAAM,wBAAwB,GAAG,CAAC,QAAuB,EAA4B,EAAE;IAC7F,MAAM,oBAAoB,GAAG,kCAAkC,CAAC,QAAQ,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAA;IAC/C,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC5B,oBAAoB,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;SAC5G;IACF,CAAC,CAAA;IACD,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IACrC,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAA;IAC/D,OAAO,KAAK,CAAC,EAAE;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAClB,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,KAAK,CAAC,UAAU,EAAE;YACnE,gBAAgB,EAAE,KAAK,CAAC,MAAM;YAC9B,iBAAiB,EAAE,KAAK,CAAC,OAAO;SAChC,CAAC,CAAA;QACF,OAAO,GAAG,EAAE;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrB,qBAAqB,EAAE,CAAA;QACxB,CAAC,CAAA;IACF,CAAC,CAAA;AACF,CAAC,CAAA;AArBY,QAAA,wBAAwB,4BAqBpC;AAED,MAAM,kCAAkC,GAAG,CAAC,QAAuB,EAAE,EAAE;IACtE,MAAM,UAAU,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;IAC5D,MAAM,UAAU,GAAG,IAAI,qBAAI,CAAC,KAAK,CAAC;QACjC,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,+BAA+B;QACrC,IAAI,EAAE,wMAAwM;QAC9M,UAAU,EAAE,UAAU;KACtB,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,IAAI,qBAAI,CAAC,KAAK,CAAC;QAChC,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,8BAA8B;QACpC,IAAI,EAAE,sOAAsO;QAC5O,UAAU,EAAE,UAAU;KACtB,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,IAAI,qBAAI,CAAC,KAAK,CAAC;QACnC,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,iCAAiC;QACvC,IAAI,EAAE,kUAAkU;QACxU,UAAU,EAAE,UAAU;KACtB,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAI,qBAAI,CAAC,KAAK,CAAC;QAC/B,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,IAAI,EAAE,6BAA6B;QACnC,IAAI,EAAE,qMAAqM;QAC3M,UAAU,EAAE,UAAU;KACtB,CAAC,CAAA;IAEF,OAAO,CAAC,EAAiC,EAAE,MAA+D,EAAE,EAAE;QAC7G,MAAM,QAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACnC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC3C,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;QACzC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;QAC/C,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACxC,CAAC,CAAA;AACF,CAAC,CAAA;AAKD,MAAM,yBAAyB,GAAG,CAAC,QAAuB,EAAuB,EAAE;IAClF,MAAM,WAAW,GAAG,IAAI,qBAAI,CAAC,SAAS,CAAC;QACtC,IAAI,EAAE,2BAA2B;QACjC,IAAI,EAAE,wIAAwI;QAC9I,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,UAAU,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;QACrD,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;KACnD,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,IAAI,qBAAI,CAAC,OAAO,CAAC;QACrC,IAAI,EAAE,2BAA2B;QACjC,IAAI,EAAE,sIAAsI;QAC5I,UAAU,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;QACrD,SAAS,EAAE,CAAC,QAAQ,CAAC;KACrB,CAAC,CAAA;IAEF,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE;QAC7B,MAAM,gBAAgB,GAA4D,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAC1G,WAAW,CAAC,OAAO,CAClB;gBACC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;gBACrE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,SAAS;aACxD,EACD,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CACvC,CAAA;QACF,CAAC,CAAA;QACD,MAAM,kBAAkB,GAA8D,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;YAClG,YAAY,CAAC,GAAG,CAAC;gBAChB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;gBACrE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,SAAS;aACxD,CAAC,CAAA;QACH,CAAC,CAAA;QACD,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,uBAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QACzE,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,uBAAY,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAA;QAC7E,OAAO,GAAG,EAAE;YACX,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,uBAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;YACrF,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,uBAAY,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAA;QAC1F,CAAC,CAAA;IACF,CAAC,CAAA;AACF,CAAC,CAAA"}
1
+ {"version":3,"file":"dbMetrics.js","sourceRoot":"","sources":["../../../src/utils/dbMetrics.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ const assert = __importStar(require("uvu/assert"));
30
30
  const uvu_1 = require("uvu");
31
31
  const prom_client_1 = __importDefault(require("prom-client"));
32
32
  const schema_migrations_1 = require("@contember/schema-migrations");
33
+ const engine_common_1 = require("@contember/engine-common");
33
34
  const dbCredentials = (dbName) => {
34
35
  return {
35
36
  host: String(process.env.TEST_DB_HOST),
@@ -54,29 +55,28 @@ const projectConfig = {
54
55
  };
55
56
  const createContainer = (debug) => {
56
57
  prom_client_1.default.register.clear();
57
- return new src_1.MasterContainerFactory().create({
58
+ const tenantConfig = {
59
+ db: dbCredentials(String(process.env.TEST_DB_NAME_TENANT)),
60
+ mailer: {},
61
+ credentials: {
62
+ rootToken,
63
+ loginToken,
64
+ },
65
+ secrets: {},
66
+ };
67
+ return new src_1.MasterContainerFactory().createBuilder({
58
68
  debugMode: debug,
59
- config: {
60
- tenant: {
61
- db: dbCredentials(String(process.env.TEST_DB_NAME_TENANT)),
62
- mailer: {},
63
- credentials: {
64
- rootToken,
65
- loginToken,
66
- },
67
- secrets: {},
68
- },
69
- server: {
70
- logging: {},
71
- port: 0,
72
- monitoringPort: 0,
73
- http: {},
74
- },
69
+ serverConfig: {
70
+ logging: {},
71
+ port: 0,
72
+ monitoringPort: 0,
73
+ http: {},
75
74
  },
76
75
  projectConfigResolver: () => projectConfig,
76
+ tenantConfigResolver: () => tenantConfig,
77
77
  plugins: [],
78
78
  processType: src_1.ProcessType.singleNode,
79
- });
79
+ }).build();
80
80
  };
81
81
  const executeGraphql = (query, options = {}) => {
82
82
  const container = createContainer(options.debug || false);
@@ -113,7 +113,18 @@ uvu_1.test.before(async () => {
113
113
  const migrationsResolver = new schema_migrations_1.MigrationsResolver(schema_migrations_1.MigrationFilesManager.createForProject((0, engine_api_tester_1.getExampleProjectDirectory)(), 'sample'));
114
114
  const container = createContainer(false);
115
115
  await container.initializer.initialize();
116
- await container.initializer.createProject(projectConfig, await migrationsResolver.getMigrations());
116
+ const { slug, name, ...config } = projectConfig;
117
+ const groupContainer = await container.projectGroupContainerResolver.getProjectGroupContainer(undefined);
118
+ const tenantContainer = groupContainer.tenantContainer;
119
+ const result = await tenantContainer.projectManager.createProject(tenantContainer.databaseContext, { slug, name, config: config, secrets: {} }, undefined);
120
+ if (!result) {
121
+ throw new Error('Project already exists');
122
+ }
123
+ const projectContainer = await groupContainer.projectContainerResolver.getProjectContainer(slug);
124
+ if (!projectContainer) {
125
+ throw new Error('Should not happen');
126
+ }
127
+ await groupContainer.systemContainer.projectInitializer.initialize(projectContainer.systemDatabaseContextFactory, projectConfig, new engine_common_1.Logger(() => null), await migrationsResolver.getMigrations());
117
128
  await tenantConnection.end();
118
129
  }
119
130
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../tests/cases/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../tests/cases/http.ts"],"names":[],"mappings":"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"}