mongodb-runner 6.5.4 → 6.6.1

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/cli.js CHANGED
@@ -121,6 +121,9 @@ const mongodb_connection_string_url_1 = require("mongodb-connection-string-url")
121
121
  .demandCommand(1, 'A command needs to be provided')
122
122
  .help().argv;
123
123
  const [command, ...args] = argv._.map(String);
124
+ if (Array.isArray(argv.args)) {
125
+ args.push(...argv.args.map(String));
126
+ }
124
127
  if (argv.debug || argv.verbose) {
125
128
  debug_1.default.enable('mongodb-runner');
126
129
  }
@@ -136,17 +139,18 @@ const mongodb_connection_string_url_1 = require("mongodb-connection-string-url")
136
139
  async function start() {
137
140
  const { cluster, id } = await utilities.start(argv, args);
138
141
  const cs = new mongodb_connection_string_url_1.ConnectionString(cluster.connectionString);
139
- console.log(`Server started and running at ${cs.toString()}`);
142
+ console.error(`Server started and running at ${cs.toString()}`);
140
143
  if (cluster.oidcIssuer) {
141
144
  cs.typedSearchParams().set('authMechanism', 'MONGODB-OIDC');
142
- console.log(`OIDC provider started and running at ${cluster.oidcIssuer}`);
143
- console.log(`Server connection string with OIDC auth: ${cs.toString()}`);
145
+ console.error(`OIDC provider started and running at ${cluster.oidcIssuer}`);
146
+ console.error(`Server connection string with OIDC auth: ${cs.toString()}`);
144
147
  }
145
- console.log('Run the following command to stop the instance:');
146
- console.log(`${argv.$0} stop --id=${id}` +
148
+ console.error('Run the following command to stop the instance:');
149
+ console.error(`${argv.$0} stop --id=${id}` +
147
150
  (argv.runnerDir !== defaultRunnerDir
148
151
  ? `--runnerDir=${argv.runnerDir}`
149
152
  : ''));
153
+ console.log(cs.toString());
150
154
  cluster.unref();
151
155
  }
152
156
  async function stop() {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ export interface CommonOptions {
27
27
  version?: string;
28
28
  users?: MongoDBUserDoc[];
29
29
  tlsAddClientKey?: boolean;
30
+ requireApiVersion?: number;
30
31
  topology: 'standalone' | 'replset' | 'sharded';
31
32
  }
32
33
  export type RSOptions = {
@@ -66,6 +67,9 @@ export declare class MongoCluster extends EventEmitter<MongoClusterEvents> {
66
67
  get serverVariant(): 'enterprise' | 'community';
67
68
  static start({ ...options }: MongoClusterOptions): Promise<MongoCluster>;
68
69
  private children;
70
+ private allServers;
71
+ assertAllServersHaveInsertedLocalMetadata(): Promise<void>;
72
+ addRequireApiVersionIfNeeded({ ...options }: MongoClusterOptions): Promise<void>;
69
73
  addAuthIfNeeded(): Promise<void>;
70
74
  updateDefaultConnectionOptions(options: Partial<MongoClientOptions>): Promise<void>;
71
75
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"mongocluster.d.ts","sourceRoot":"","sources":["../src/mongocluster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongocluster.d.ts","sourceRoot":"","sources":["../src/mongocluster.ts"],"names":[],"mappings":"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"}
@@ -145,8 +145,8 @@ class MongoCluster extends events_1.EventEmitter {
145
145
  cluster.replSetName = serialized.replSetName;
146
146
  cluster.defaultConnectionOptions = serialized.defaultConnectionOptions;
147
147
  cluster.users = serialized.users;
148
- cluster.servers = await Promise.all(serialized.servers.map((srv) => mongoserver_1.MongoServer.deserialize(srv)));
149
- cluster.shards = await Promise.all(serialized.shards.map((shard) => MongoCluster.deserialize(shard)));
148
+ cluster.servers = await (0, util_1.safePromiseAll)(serialized.servers.map((srv) => mongoserver_1.MongoServer.deserialize(srv)));
149
+ cluster.shards = await (0, util_1.safePromiseAll)(serialized.shards.map((shard) => MongoCluster.deserialize(shard)));
150
150
  cluster.oidcMockProviderProcess = serialized.oidcMockProviderProcess
151
151
  ? oidc_1.OIDCMockProviderProcess.deserialize(serialized.oidcMockProviderProcess)
152
152
  : undefined;
@@ -216,11 +216,12 @@ class MongoCluster extends events_1.EventEmitter {
216
216
  });
217
217
  const primaryIndex = rsMembers.findIndex((m) => rsMembers.every((m2) => m.priority ?? 0 >= (m2.priority ?? 0)));
218
218
  assert_1.default.notStrictEqual(primaryIndex, -1);
219
- const nodes = await Promise.all(rsMembers.map(async (member) => {
219
+ const nodes = await (0, util_1.safePromiseAll)(rsMembers.map(async (member) => {
220
220
  return [
221
221
  await mongoserver_1.MongoServer.start({
222
222
  ...options,
223
223
  args: member.args,
224
+ isArbiter: member.arbiterOnly ?? false,
224
225
  binary: 'mongod',
225
226
  }),
226
227
  member,
@@ -264,12 +265,13 @@ class MongoCluster extends events_1.EventEmitter {
264
265
  else if (options.topology === 'sharded') {
265
266
  const { shards, mongosArgs } = processShardOptions(options);
266
267
  (0, util_1.debug)('starting config server and shard servers', shards);
267
- const allShards = await Promise.all(shards.map(async (s) => {
268
+ const allShards = await (0, util_1.safePromiseAll)(shards.map(async (s) => {
268
269
  const isConfig = s.args?.includes('--configsvr');
269
270
  const cluster = await MongoCluster.start({
270
271
  ...options,
271
272
  ...s,
272
273
  topology: 'replset',
274
+ requireApiVersion: undefined,
273
275
  users: isConfig ? undefined : options.users,
274
276
  });
275
277
  return [cluster, isConfig];
@@ -279,7 +281,7 @@ class MongoCluster extends events_1.EventEmitter {
279
281
  .filter(([, isConfig]) => !isConfig)
280
282
  .map(([shard]) => shard);
281
283
  cluster.shards.push(configsvr, ...shardsvrs);
282
- const mongosServers = await Promise.all(mongosArgs.map(async (args) => {
284
+ const mongosServers = await (0, util_1.safePromiseAll)(mongosArgs.map(async (args) => {
283
285
  (0, util_1.debug)('starting mongos');
284
286
  return await mongoserver_1.MongoServer.start({
285
287
  ...options,
@@ -305,12 +307,44 @@ class MongoCluster extends events_1.EventEmitter {
305
307
  });
306
308
  }
307
309
  await cluster.addAuthIfNeeded();
310
+ await cluster.addRequireApiVersionIfNeeded(options);
311
+ try {
312
+ await cluster.assertAllServersHaveInsertedLocalMetadata();
313
+ }
314
+ catch (err) {
315
+ if (options.tlsAddClientKey !== false && !options.docker)
316
+ throw err;
317
+ }
308
318
  return cluster;
309
319
  }
310
320
  *children() {
311
321
  yield* this.servers;
312
322
  yield* this.shards;
313
323
  }
324
+ *allServers() {
325
+ for (const child of this.servers)
326
+ yield child;
327
+ for (const shard of this.shards)
328
+ yield* shard.allServers();
329
+ }
330
+ async assertAllServersHaveInsertedLocalMetadata() {
331
+ await (0, util_1.safePromiseAll)([...this.allServers()].map(async (server) => await server.assertHasInsertedLocalMetadata()));
332
+ }
333
+ async addRequireApiVersionIfNeeded({ ...options }) {
334
+ if (options.requireApiVersion === undefined) {
335
+ return;
336
+ }
337
+ if (options.topology === 'replset') {
338
+ throw new Error('requireApiVersion is not supported for replica sets, see SERVER-97010');
339
+ }
340
+ await (0, util_1.safePromiseAll)([...this.servers].map(async (child) => await child.withClient(async (client) => {
341
+ const admin = client.db('admin');
342
+ await admin.command({ setParameter: 1, requireApiVersion: true });
343
+ })));
344
+ await this.updateDefaultConnectionOptions({
345
+ serverApi: String(options.requireApiVersion),
346
+ });
347
+ }
314
348
  async addAuthIfNeeded() {
315
349
  if (!this.users?.length)
316
350
  return;
@@ -320,7 +354,12 @@ class MongoCluster extends events_1.EventEmitter {
320
354
  for (const user of this.users) {
321
355
  const { username, password, ...rest } = user;
322
356
  (0, util_1.debug)('adding new user', { username, ...rest }, this.connectionString);
323
- await admin.command({ createUser: username, pwd: password, ...rest });
357
+ await admin.command({
358
+ createUser: username,
359
+ pwd: password,
360
+ writeConcern: { w: 'majority', j: true, wtimeout: 0 },
361
+ ...rest,
362
+ });
324
363
  }
325
364
  });
326
365
  await this.updateDefaultConnectionOptions({
@@ -328,14 +367,14 @@ class MongoCluster extends events_1.EventEmitter {
328
367
  });
329
368
  }
330
369
  async updateDefaultConnectionOptions(options) {
331
- await Promise.all([...this.children()].map(async (child) => child.updateDefaultConnectionOptions(options)));
370
+ await (0, util_1.safePromiseAll)([...this.children()].map(async (child) => child.updateDefaultConnectionOptions(options)));
332
371
  this.defaultConnectionOptions = {
333
372
  ...this.defaultConnectionOptions,
334
373
  ...options,
335
374
  };
336
375
  }
337
376
  async close() {
338
- await Promise.all([...this.children(), this.oidcMockProviderProcess].map((closable) => closable?.close()));
377
+ await (0, util_1.safePromiseAll)([...this.children(), this.oidcMockProviderProcess].map((closable) => closable?.close()));
339
378
  this.servers = [];
340
379
  this.shards = [];
341
380
  }
@@ -365,7 +404,12 @@ class MongoCluster extends events_1.EventEmitter {
365
404
  case 'standalone':
366
405
  return {};
367
406
  case 'replset':
368
- return { writeConcern: { w: this.servers.length, j: true } };
407
+ return {
408
+ writeConcern: {
409
+ w: this.servers.filter((s) => !s.isArbiter).length,
410
+ j: true,
411
+ },
412
+ };
369
413
  case 'sharded':
370
414
  return {
371
415
  writeConcern: {
@@ -1 +1 @@
1
- {"version":3,"file":"mongocluster.js","sourceRoot":"","sources":["../src/mongocluster.ts"],"names":[],"mappings":";;;;;;AACA,+CAA4C;AAC5C,iFAAiE;AAEjE,uEAAiE;AAOjE,qCAAsC;AACtC,iCAQgB;AAChB,iCAAiD;AACjD,mCAAsC;AACtC,oDAA4B;AAC5B,+CAA0D;AAgI1D,SAAS,aAAa,CAAC,CAAC,GAAG,IAAI,CAAW;IACxC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;IACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;SAAM,IACL,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAC1E,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,IAA0B;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CACzE,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA4B;IAIpD,MAAM,EACJ,WAAW,GAAG,CAAC,EACf,QAAQ,GAAG,CAAC,EACZ,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,EACpB,SAAS,GACV,GAAG,OAAO,CAAC;IAEZ,IAAI,WAAmB,CAAC;IACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,WAAW,GAAG,WAAW,IAAA,WAAI,GAAE,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,WAAW,GAAa,CAAC,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,aAAa,GAAG,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAE9D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACnC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAC/D,CAAC;QACF,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/B,GAAG,CAAC;gBACJ,IAAI,EAAE;oBACJ,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;oBACjB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;wBACpB,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,CAAC,KAAK,OAAO;4BACb,CAAC,CAAC,WAAW;4BACb,CAAC,CAAC,aAAa,CAAC;iBACrB;aACF,CAAC,CAAC;YACH,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE;YACT,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE;YAClC,GAAG,IAAA,YAAK,EAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;YACvE,GAAG,IAAA,YAAK,EAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5B,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;SACJ;QACD,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA4B;IAIvD,MAAM,MAAM,GACV,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,MAAM;QACnD,CAAC,CAAC,IAAA,YAAK,EAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAClC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAiC,CAC3C;QACH,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACrB,MAAM,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAC3D,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,GAAG,YAAY;YACf,IAAI,EAAE;gBACJ,GAAG,aAAa,CAAC,QAAQ,CAAC;gBAC1B,GAAG,IAAI;gBACP,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;oBAC7D,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,KAAK,CAAC;wBACP,CAAC,CAAC,CAAC,aAAa,CAAC;wBACjB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;aACtB;SACF,CAAC,CAAC;QACH,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;gBACvC,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC5B,GAAG,aAAa;SACjB,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAa,YAAa,SAAQ,qBAAgC;IAShE;QACE,KAAK,EAAE,CAAC;QATF,aAAQ,GAAoC,YAAY,CAAC;QAEzD,YAAO,GAAkB,EAAE,CAAC;QAC5B,WAAM,GAAmB,EAAE,CAAC;QAE5B,6BAAwB,GAAgC,EAAE,CAAC;QAC3D,UAAK,GAAqB,EAAE,CAAC;QAOnC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YAC9B,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,gBAAgB;gBAAE,OAAO;YAChE,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO;oBAC9B,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;gBAClE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;oBAC7B,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;IAEL,CAAC;IAEO,MAAM,CAAC,eAAe,CAC5B,MAAc,EACd,4BAAiD,EACjD,OAAqC;QAErC,OAAO,IAAA,oCAAe,EAAC;YACrB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,4BAA4B;YACrC,eAAe,EAAE,OAAO;YACxB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAED,SAAS;QACP,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACnD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACrD,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,EAAE,SAAS,EAAE;YAClE,wBAAwB,EAAE,IAAA,gBAAS,EAAC,IAAI,CAAC,wBAAwB,IAAI,EAAE,CAAC;YACxE,KAAK,EAAE,IAAA,gBAAS,EAAC,IAAI,CAAC,KAAK,CAAC;SAC7B,CAAC;IACJ,CAAC;IAED,QAAQ;QAGN,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE,OAAO,IAAI,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAe;QACtC,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;QACnC,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACvC,OAAO,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC7C,OAAO,CAAC,wBAAwB,GAAG,UAAU,CAAC,wBAAwB,CAAC;QACvE,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QACjC,OAAO,CAAC,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,yBAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CACnE,CAAC;QACF,OAAO,CAAC,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CACvE,CAAC;QACF,OAAO,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB;YAClE,CAAC,CAAC,8BAAuB,CAAC,WAAW,CAAC,UAAU,CAAC,uBAAuB,CAAC;YACzE,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAA,2BAAoB,EACzB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,wBAAwB,CAC9B,CAAC;IACJ,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,uBAAuB,EAAE,MAAM,CAAC;IAC9C,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,gDAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IACvC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EACjB,GAAG,OAAO,EACU;QACpB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,MAAM,IAAA,uCAAyB,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAExE,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;QACnC,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACpC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACpC,OAAO,CAAC,wBAAwB,GAAG,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACxE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CACzC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,EACrC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,eAAe,CACxB,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,CAAC,uBAAuB,GAAG,MAAM,8BAAuB,CAAC,KAAK,CACnE,OAAO,CAAC,IAAI,IAAI,UAAU,CAC3B,CAAC;YACF,MAAM,gBAAgB,GAAG;gBACvB;oBACE,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,MAAM;oBAC9C,QAAQ,EAAE,OAAO,CAAC,uBAAuB,CAAC,QAAQ;oBAClD,cAAc,EAAE,KAAK;oBACrB,QAAQ,EAAE,KAAK;oBACf,kBAAkB,EAAE,QAAQ;iBAC7B;aACF,CAAC;YACF,OAAO,OAAO,CAAC,IAAI,CAAC;YACpB,OAAO,CAAC,IAAI,GAAG;gBACb,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;gBACvB,gBAAgB;gBAChB,yBAAyB,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE;gBAC3D,gBAAgB;gBAChB,qDAAqD;gBACrD,gBAAgB;gBAChB,yBAAyB;aAC1B,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YACtC,OAAO,CAAC,OAAO,CAAC,IAAI,CAClB,MAAM,yBAAW,CAAC,KAAK,CAAC;gBACtB,GAAG,OAAO;gBACV,MAAM,EAAE,QAAQ;aACjB,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAE7D,IAAA,YAAK,EAAC,4BAA4B,EAAE;gBAClC,WAAW;gBACX,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC;gBAC/D,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM;aACxD,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7C,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAC/D,CAAC;YACF,gBAAM,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;YAExC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC7B,OAAO;oBACL,MAAM,yBAAW,CAAC,KAAK,CAAC;wBACtB,GAAG,OAAO;wBACV,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,MAAM,EAAE,QAAQ;qBACjB,CAAC;oBACF,MAAM;iBACE,CAAC;YACb,CAAC,CAAC,CACH,CAAC;YACF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAE9C,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACxC,IAAA,YAAK,EAAC,qBAAqB,CAAC,CAAC;gBAC7B,MAAM,MAAM,GAAG;oBACb,GAAG,EAAE,WAAW;oBAChB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;oBACjE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE;wBACtC,OAAO;4BACL,GAAG,EAAE,CAAC;4BACN,IAAI,EAAE,GAAG,CAAC,QAAQ;4BAClB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,KAAK;4BACxC,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BACzD,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;yBACxB,CAAC;oBACJ,CAAC,CAAC;iBACH,CAAC;gBACF,IAAA,mBAAY,EAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;gBACzC,MAAM,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;oBAC/B,eAAe,EAAE,MAAM;iBACxB,CAAC,CAAC;gBAEH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;wBAC9C,gBAAgB,EAAE,CAAC;qBACpB,CAAC,CAAC;oBACH,IACE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,EACnE,CAAC;wBACD,IAAA,YAAK,EACH,yCAAyC,EACzC,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,OAAO,CACf,CAAC;wBACF,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC;wBACjC,MAAM;oBACR,CAAC;oBACD,IAAA,YAAK,EAAC,+CAA+C,CAAC,CAAC;oBACvD,MAAM,IAAA,YAAK,EAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAA,YAAK,EAAC,0CAA0C,EAAE,MAAM,CAAC,CAAC;YAC1D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;gBACjD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;oBACvC,GAAG,OAAO;oBACV,GAAG,CAAC;oBACJ,QAAQ,EAAE,SAAS;oBACnB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;iBAC5C,CAAC,CAAC;gBACH,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAU,CAAC;YACtC,CAAC,CAAC,CACH,CAAC;YACF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAE,CAAC,CAAC,CAAC,CAAC;YACjE,MAAM,SAAS,GAAG,SAAS;iBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;iBACnC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC;YAE7C,MAAM,aAAa,GAAkB,MAAM,OAAO,CAAC,GAAG,CACpD,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC5B,IAAA,YAAK,EAAC,iBAAiB,CAAC,CAAC;gBACzB,OAAO,MAAM,yBAAW,CAAC,KAAK,CAAC;oBAC7B,GAAG,OAAO;oBACV,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE;wBACJ,GAAG,IAAI;wBACP,YAAY;wBACZ,GAAG,SAAS,CAAC,WAAY,IAAI,SAAS,CAAC,QAAQ,EAAE;qBAClD;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;YACF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACvC,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,WAAY,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAC5D,IAAA,YAAK,EAAC,cAAc,EAAE,SAAS,CAAC,CAAC;oBACjC,MAAM,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;wBAC/B,QAAQ,EAAE,SAAS;qBACpB,CAAC,CAAC;gBACL,CAAC;gBACD,IAAA,YAAK,EAAC,cAAc,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,CAAC,QAAQ;QACf,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QACpB,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;YAAE,OAAO;QAEhC,MAAM,IAAA,YAAK,EAAC,IAAI,CAAC,CAAC;QAClB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;gBAC7C,IAAA,YAAK,EAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACvE,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,8BAA8B,CAAC;YACxC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,OAAoC;QAEpC,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACvC,KAAK,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAC9C,CACF,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG;YAC9B,GAAG,IAAI,CAAC,wBAAwB;YAChC,GAAG,OAAO;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAClE,QAAQ,EAAE,KAAK,EAAE,CAClB,CACF,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,UAAU,CACd,EAAM,EACN,gBAAoC,EAAE;QAEtC,MAAM,MAAM,GAAG,MAAM,qBAAW,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC9D,GAAG,IAAI,CAAC,0BAA0B,EAAE;YACpC,GAAG,IAAI,CAAC,wBAAwB;YAChC,GAAG,aAAa;SACjB,CAAC,CAAC;QACH,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,GAAG;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACnD,CAAC;IAED,KAAK;QACH,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;IAGD,0BAA0B;QACxB,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,YAAY;gBACf,OAAO,EAAE,CAAC;YACZ,KAAK,SAAS;gBACZ,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;YAC/D,KAAK,SAAS;gBACZ,OAAO;oBACL,YAAY,EAAE;wBACZ,CAAC,EAAE,IAAI,CAAC,GAAG,CACT,GAAG,IAAI,CAAC,MAAM;6BACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;6BAC1D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CACxC;wBACD,CAAC,EAAE,IAAI;qBACR;iBACF,CAAC;YACJ;gBACE,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,CAAC,QAAkB,EAAE,CAC1D,CAAC;QACN,CAAC;IACH,CAAC;CACF;AA/WD,oCA+WC"}
1
+ {"version":3,"file":"mongocluster.js","sourceRoot":"","sources":["../src/mongocluster.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ export interface MongoServerOptions {
10
10
  args?: string[];
11
11
  docker?: string | string[];
12
12
  internalClientOptions?: Partial<MongoClientOptions>;
13
+ isArbiter?: boolean;
14
+ isMongos?: boolean;
15
+ isConfigSvr?: boolean;
16
+ keyFileContents?: string;
13
17
  }
14
18
  interface SerializedServerProperties {
15
19
  _id: string;
@@ -19,6 +23,10 @@ interface SerializedServerProperties {
19
23
  defaultConnectionOptions?: Partial<MongoClientOptions>;
20
24
  startTime: string;
21
25
  hasInsertedMetadataCollEntry: boolean;
26
+ isArbiter?: boolean;
27
+ isMongos?: boolean;
28
+ isConfigSvr?: boolean;
29
+ keyFileContents?: string;
22
30
  }
23
31
  export interface MongoServerEvents {
24
32
  mongoLog: [LogEntry];
@@ -33,6 +41,10 @@ export declare class MongoServer extends EventEmitter<MongoServerEvents> {
33
41
  private closing;
34
42
  private startTime;
35
43
  private hasInsertedMetadataCollEntry;
44
+ isArbiter: boolean;
45
+ isMongos: boolean;
46
+ private isConfigSvr;
47
+ private keyFileContents?;
36
48
  private defaultConnectionOptions?;
37
49
  get id(): string;
38
50
  private constructor();
@@ -51,6 +63,7 @@ export declare class MongoServer extends EventEmitter<MongoServerEvents> {
51
63
  withClient<Fn extends (client: MongoClient) => any>(fn: Fn, clientOptions?: MongoClientOptions): Promise<ReturnType<Fn>>;
52
64
  ref(): void;
53
65
  unref(): void;
66
+ assertHasInsertedLocalMetadata(): Promise<void>;
54
67
  }
55
68
  export {};
56
69
  //# sourceMappingURL=mongoserver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mongoserver.d.ts","sourceRoot":"","sources":["../src/mongoserver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQjD,OAAO,KAAK,EAAY,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAQ,MAAM,QAAQ,CAAC;AAa5C,MAAM,WAAW,kBAAkB;IAEjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE3B,qBAAqB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACrD;AAED,UAAU,0BAA0B;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wBAAwB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;CACtB;AAED,qBAAa,WAAY,SAAQ,YAAY,CAAC,iBAAiB,CAAC;IACvD,IAAI,EAAE,MAAM,CAAU;IAC7B,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,GAAG,CAAC,CAAS;IACrB,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,wBAAwB,CAAC,CAA8B;IAE/D,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,OAAO;IAKP,SAAS,IAAI,0BAA0B;WAY1B,WAAW,CACtB,UAAU,EAAE,0BAA0B,GACrC,OAAO,CAAC,WAAW,CAAC;IAcvB,IAAI,QAAQ,IAAI,MAAM,CAKrB;IAGD,IAAI,aAAa,IAAI,MAAM,CAK1B;IACD,IAAI,aAAa,IAAI,YAAY,GAAG,WAAW,CAO9C;WAEY,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;WAiC/D,MAAM,CAAC,EAClB,GAAG,OAAO,EACX,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;IAuItC,8BAA8B,CAClC,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC;IAqBV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA4Bd,2BAA2B;YAwD3B,kBAAkB;IAyBhC,IAAI,gBAAgB,IAAI,MAAM,CAM7B;IAEK,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,WAAW,KAAK,GAAG,EACtD,EAAE,EAAE,EAAE,EACN,aAAa,GAAE,kBAAuB,GACrC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAa1B,GAAG,IAAI,IAAI;IAMX,KAAK,IAAI,IAAI;CAKd"}
1
+ {"version":3,"file":"mongoserver.d.ts","sourceRoot":"","sources":["../src/mongoserver.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,16 @@ const mongodb_1 = require("mongodb");
12
12
  const path_1 = __importDefault(require("path"));
13
13
  const events_1 = require("events");
14
14
  const util_1 = require("./util");
15
+ function getKeyFileOption(args) {
16
+ if (!args)
17
+ return undefined;
18
+ const splitArgIndex = args.indexOf('--keyFile');
19
+ if (splitArgIndex !== -1) {
20
+ return args[splitArgIndex + 1];
21
+ }
22
+ const arg = args.find((a) => a.startsWith('--keyFile='));
23
+ return arg?.split('=')[1];
24
+ }
15
25
  class MongoServer extends events_1.EventEmitter {
16
26
  get id() {
17
27
  return this.uuid;
@@ -22,6 +32,9 @@ class MongoServer extends events_1.EventEmitter {
22
32
  this.closing = false;
23
33
  this.startTime = new Date().toISOString();
24
34
  this.hasInsertedMetadataCollEntry = false;
35
+ this.isArbiter = false;
36
+ this.isMongos = false;
37
+ this.isConfigSvr = false;
25
38
  }
26
39
  serialize() {
27
40
  return {
@@ -32,6 +45,10 @@ class MongoServer extends events_1.EventEmitter {
32
45
  startTime: this.startTime,
33
46
  hasInsertedMetadataCollEntry: this.hasInsertedMetadataCollEntry,
34
47
  defaultConnectionOptions: (0, util_1.jsonClone)(this.defaultConnectionOptions ?? {}),
48
+ isArbiter: this.isArbiter,
49
+ isMongos: this.isMongos,
50
+ isConfigSvr: this.isConfigSvr,
51
+ keyFileContents: this.keyFileContents,
35
52
  };
36
53
  }
37
54
  static async deserialize(serialized) {
@@ -40,6 +57,10 @@ class MongoServer extends events_1.EventEmitter {
40
57
  srv.port = serialized.port;
41
58
  srv.defaultConnectionOptions = serialized.defaultConnectionOptions;
42
59
  srv.closing = !!(await srv._populateBuildInfo('restore-check'));
60
+ srv.isArbiter = !!serialized.isArbiter;
61
+ srv.isMongos = !!serialized.isMongos;
62
+ srv.isConfigSvr = !!serialized.isConfigSvr;
63
+ srv.keyFileContents = serialized.keyFileContents;
43
64
  if (!srv.closing) {
44
65
  srv.pid = serialized.pid;
45
66
  srv.dbPath = serialized.dbPath;
@@ -96,6 +117,17 @@ class MongoServer extends events_1.EventEmitter {
96
117
  static async _start({ ...options }) {
97
118
  const srv = new MongoServer();
98
119
  srv.defaultConnectionOptions = { ...options.internalClientOptions };
120
+ srv.isArbiter = !!options.isArbiter;
121
+ srv.isMongos = options.binary === 'mongos';
122
+ srv.isConfigSvr = !!options.args?.includes('--configsvr');
123
+ const keyFilePath = getKeyFileOption(options.args);
124
+ if (keyFilePath) {
125
+ srv.keyFileContents = await fs_1.promises.readFile(keyFilePath, 'utf8');
126
+ (0, util_1.debug)('read keyFile contents for server', {
127
+ keyFilePath,
128
+ uuid: srv.uuid,
129
+ });
130
+ }
99
131
  if (!options.docker) {
100
132
  const dbPath = path_1.default.join(options.tmpDir, `db-${srv.uuid}`);
101
133
  await fs_1.promises.mkdir(dbPath, { recursive: true });
@@ -194,9 +226,11 @@ class MongoServer extends events_1.EventEmitter {
194
226
  }
195
227
  logEntryStream.resume();
196
228
  srv.port = port;
197
- const buildInfoError = await srv._populateBuildInfo('insert-new');
198
- if (buildInfoError) {
199
- (0, util_1.debug)('failed to get buildInfo', buildInfoError);
229
+ if (!keyFilePath) {
230
+ const buildInfoError = await srv._populateBuildInfo('insert-new');
231
+ if (buildInfoError) {
232
+ (0, util_1.debug)('failed to get buildInfo', buildInfoError);
233
+ }
200
234
  }
201
235
  }
202
236
  catch (err) {
@@ -206,17 +240,27 @@ class MongoServer extends events_1.EventEmitter {
206
240
  return srv;
207
241
  }
208
242
  async updateDefaultConnectionOptions(options) {
209
- let buildInfoError = null;
210
- for (let attempts = 0; attempts < 10; attempts++) {
211
- buildInfoError = await this._populateBuildInfo('restore-check', {
212
- ...options,
213
- });
214
- if (!buildInfoError)
243
+ const start = Date.now();
244
+ let error;
245
+ for (let attempts = 0; attempts < 20; attempts++) {
246
+ try {
247
+ this.buildInfo = await this.withClient(async (client) => {
248
+ return await client.db('admin').command({ buildInfo: 1 });
249
+ }, options);
250
+ error = undefined;
215
251
  break;
216
- (0, util_1.debug)('failed to get buildInfo when setting new options', buildInfoError, options, this.connectionString);
252
+ }
253
+ catch (err) {
254
+ error = err;
255
+ }
256
+ await (0, util_1.sleep)(Math.min(1000, 2 ** attempts * 10));
217
257
  }
218
- if (buildInfoError)
219
- throw buildInfoError;
258
+ (0, util_1.debug)('updated default connection options', {
259
+ error,
260
+ Δt: Date.now() - start,
261
+ });
262
+ if (error)
263
+ throw error;
220
264
  this.defaultConnectionOptions = {
221
265
  ...this.defaultConnectionOptions,
222
266
  ...options,
@@ -252,6 +296,14 @@ class MongoServer extends events_1.EventEmitter {
252
296
  }
253
297
  async _ensureMatchingMetadataColl(client, mode) {
254
298
  const hello = await client.db('admin').command({ hello: 1 });
299
+ const { arbiterOnly } = hello;
300
+ if (arbiterOnly === this.isArbiter) {
301
+ (0, util_1.debug)('skipping metadata check for arbiter');
302
+ return;
303
+ }
304
+ if (this.isArbiter) {
305
+ throw new Error('Arbiter flag mismatch -- server should be arbiter but hello indicates it is not');
306
+ }
255
307
  const isMongoS = hello.msg === 'isdbgrid';
256
308
  const insertedInfo = (0, util_1.pick)(this.serialize(), [
257
309
  '_id',
@@ -263,7 +315,9 @@ class MongoServer extends events_1.EventEmitter {
263
315
  const runnerColl = client
264
316
  .db(isMongoS ? 'config' : 'local')
265
317
  .collection('mongodbrunner');
266
- (0, util_1.debug)('ensuring metadata collection entry', insertedInfo, { isMongoS });
318
+ (0, util_1.debug)('ensuring metadata collection entry', insertedInfo, {
319
+ isMongoS,
320
+ });
267
321
  if (mode === 'insert-new') {
268
322
  const existingEntry = await runnerColl.findOne();
269
323
  if (!isMongoS && existingEntry) {
@@ -291,13 +345,22 @@ class MongoServer extends events_1.EventEmitter {
291
345
  async _populateBuildInfo(mode, clientOpts) {
292
346
  try {
293
347
  clientOpts = { retryWrites: false, ...clientOpts };
348
+ if (this.keyFileContents &&
349
+ (clientOpts.auth || this.defaultConnectionOptions?.auth)) {
350
+ clientOpts.auth = {
351
+ username: '__system',
352
+ password: this.keyFileContents,
353
+ };
354
+ clientOpts.authMechanism = 'SCRAM-SHA-256';
355
+ clientOpts.authSource = this.isMongos ? 'admin' : 'local';
356
+ }
294
357
  this.buildInfo = await this.withClient(async (client) => {
295
358
  await this._ensureMatchingMetadataColl(client, mode);
296
359
  return await client.db('admin').command({ buildInfo: 1 });
297
360
  }, clientOpts);
298
361
  }
299
362
  catch (err) {
300
- (0, util_1.debug)('failed to get buildInfo, treating as closed server', err);
363
+ (0, util_1.debug)('failed to get buildInfo, treating as closed server', err, new Error().stack);
301
364
  return err;
302
365
  }
303
366
  (0, util_1.debug)('got server build info through client', this.serverVersion, this.serverVariant);
@@ -307,11 +370,17 @@ class MongoServer extends events_1.EventEmitter {
307
370
  return (0, util_1.makeConnectionString)(this.hostport, undefined, this.defaultConnectionOptions);
308
371
  }
309
372
  async withClient(fn, clientOptions = {}) {
310
- const client = await mongodb_1.MongoClient.connect(this.connectionString, {
373
+ clientOptions = {
311
374
  directConnection: true,
312
375
  ...this.defaultConnectionOptions,
313
376
  ...clientOptions,
314
- });
377
+ };
378
+ if (this.isArbiter &&
379
+ clientOptions.auth &&
380
+ clientOptions.auth.username !== '__system') {
381
+ clientOptions.auth = undefined;
382
+ }
383
+ const client = await mongodb_1.MongoClient.connect(this.connectionString, clientOptions);
315
384
  try {
316
385
  return await fn(client);
317
386
  }
@@ -329,6 +398,23 @@ class MongoServer extends events_1.EventEmitter {
329
398
  this.childProcess?.stdout?.unref();
330
399
  this.childProcess?.stderr?.unref();
331
400
  }
401
+ async assertHasInsertedLocalMetadata() {
402
+ if (!this.hasInsertedMetadataCollEntry) {
403
+ (0, util_1.debug)('populating metadata collection entry after initial setup');
404
+ const err = await this._populateBuildInfo('insert-new');
405
+ if (err && !this.isMongos && !this.isConfigSvr)
406
+ throw err;
407
+ }
408
+ if (!this.buildInfo) {
409
+ throw new Error(`Server buildInfo is not populated ${JSON.stringify(this.serialize())}`);
410
+ }
411
+ if (!this.hasInsertedMetadataCollEntry &&
412
+ !this.isArbiter &&
413
+ !this.isMongos &&
414
+ !this.isConfigSvr) {
415
+ throw new Error(`Server has not inserted metadata collection entry ${JSON.stringify(this.serialize())}`);
416
+ }
417
+ }
332
418
  }
333
419
  exports.MongoServer = MongoServer;
334
420
  //# sourceMappingURL=mongoserver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mongoserver.js","sourceRoot":"","sources":["../src/mongoserver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongoserver.js","sourceRoot":"","sources":["../src/mongoserver.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,7 @@ export interface TLSClientOptions {
5
5
  tmpDir: string;
6
6
  internalClientOptions?: Partial<MongoClientOptions>;
7
7
  }
8
- export declare function handleTLSClientKeyOptions({ tlsAddClientKey, args: [...args], tmpDir, internalClientOptions, }: TLSClientOptions): Promise<Partial<TLSClientOptions>>;
8
+ export declare function handleTLSClientKeyOptions({ tlsAddClientKey, args: [...args], tmpDir, internalClientOptions, docker, }: TLSClientOptions & {
9
+ docker?: unknown;
10
+ }): Promise<Partial<TLSClientOptions>>;
9
11
  //# sourceMappingURL=tls-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tls-helpers.d.ts","sourceRoot":"","sources":["../src/tls-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGlD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACrD;AAED,wBAAsB,yBAAyB,CAAC,EAC9C,eAAe,EACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAM,EACpB,MAAM,EACN,qBAA0B,GAC3B,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAqFvD"}
1
+ {"version":3,"file":"tls-helpers.d.ts","sourceRoot":"","sources":["../src/tls-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGlD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACrD;AAED,wBAAsB,yBAAyB,CAAC,EAC9C,eAAe,EACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAM,EACpB,MAAM,EACN,qBAA0B,EAC1B,MAAM,GACP,EAAE,gBAAgB,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAClD,OAAO,CAAC,gBAAgB,CAAC,CAC1B,CAqFA"}
@@ -43,9 +43,9 @@ const util_1 = require("./util");
43
43
  const path_1 = __importDefault(require("path"));
44
44
  const promises_1 = require("fs/promises");
45
45
  x509.cryptoProvider.set(crypto_1.webcrypto);
46
- async function handleTLSClientKeyOptions({ tlsAddClientKey, args: [...args] = [], tmpDir, internalClientOptions = {}, }) {
47
- const existingTLSCAOptionIndex = args.findIndex((arg) => arg.match(/^--tls(Cluster)?CAFile(=|$)/));
48
- if (tlsAddClientKey === false)
46
+ async function handleTLSClientKeyOptions({ tlsAddClientKey, args: [...args] = [], tmpDir, internalClientOptions = {}, docker, }) {
47
+ const existingTLSCAOptionIndex = args.findIndex((arg) => arg.match(/^--(tls|ssl)(Cluster)?CAFile(=|$)/));
48
+ if (tlsAddClientKey === false || docker)
49
49
  return {};
50
50
  if (tlsAddClientKey !== true && existingTLSCAOptionIndex === -1)
51
51
  return {};
@@ -81,7 +81,7 @@ async function handleTLSClientKeyOptions({ tlsAddClientKey, args: [...args] = []
81
81
  const id = (0, util_1.uuid)();
82
82
  const clientPEM = path_1.default.join(tmpDir, `mongodb-runner-client-${id}.pem`);
83
83
  const caPEM = path_1.default.join(tmpDir, `mongodb-runner-ca-${id}.pem`);
84
- await Promise.all([
84
+ await (0, util_1.safePromiseAll)([
85
85
  (async () => {
86
86
  await (0, promises_1.writeFile)(clientPEM, Buffer.concat([
87
87
  clientPEMContent,
@@ -1 +1 @@
1
- {"version":3,"file":"tls-helpers.js","sourceRoot":"","sources":["../src/tls-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tls-helpers.js","sourceRoot":"","sources":["../src/tls-helpers.ts"],"names":[],"mappings":"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"}
package/dist/util.d.ts CHANGED
@@ -6,6 +6,7 @@ export declare const uuid: () => string;
6
6
  export declare const sleep: (ms: number) => Promise<void>;
7
7
  export declare const range: (n: number) => number[];
8
8
  export declare function parallelForEach<T>(iterable: AsyncIterable<T>, fn: (arg0: T) => Promise<void> | void): Promise<PromiseSettledResult<void>[]>;
9
+ export declare function safePromiseAll<T>(promises: (Promise<T> | T)[]): Promise<T[]>;
9
10
  export declare function pick<T extends object, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
10
11
  export declare function jsonClone<T>(obj: T): T;
11
12
  export declare function makeConnectionString(hostport: string, replSetName?: string, defaultConnectionOptions?: Partial<MongoClientOptions>): string;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,WAAW,MAAM,OAAO,CAAC;AAGhC,eAAO,MAAM,KAAK,sBAAgC,CAAC;AACnD,eAAO,MAAM,YAAY,sBAA0B,CAAC;AACpD,eAAO,MAAM,IAAI,cAA0C,CAAC;AAC5D,eAAO,MAAM,KAAK,GAAI,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CACR,CAAC;AACxC,eAAO,MAAM,KAAK,GAAI,GAAG,MAAM,KAAG,MAAM,EAA0B,CAAC;AAYnE,wBAAsB,eAAe,CAAC,CAAC,EACrC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GACpC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAOvC;AAED,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EACtD,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,CAAC,EAAE,GACR,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAQZ;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAEtC;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,wBAAwB,GAAE,OAAO,CAAC,kBAAkB,CAAM,GACzD,MAAM,CAuCR;AAED,wBAAsB,UAAU,CAC9B,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAC9B,EACE,UAAgB,EAChB,SAAgB,GACjB,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClD,OAAO,CAAC,IAAI,CAAC,CAef"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,WAAW,MAAM,OAAO,CAAC;AAGhC,eAAO,MAAM,KAAK,sBAAgC,CAAC;AACnD,eAAO,MAAM,YAAY,sBAA0B,CAAC;AACpD,eAAO,MAAM,IAAI,cAA0C,CAAC;AAC5D,eAAO,MAAM,KAAK,GAAI,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CACR,CAAC;AACxC,eAAO,MAAM,KAAK,GAAI,GAAG,MAAM,KAAG,MAAM,EAA0B,CAAC;AAYnE,wBAAsB,eAAe,CAAC,CAAC,EACrC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GACpC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAOvC;AAUD,wBAAsB,cAAc,CAAC,CAAC,EACpC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAC3B,OAAO,CAAC,CAAC,EAAE,CAAC,CAad;AAED,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EACtD,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,CAAC,EAAE,GACR,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAQZ;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAEtC;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,wBAAwB,GAAE,OAAO,CAAC,kBAAkB,CAAM,GACzD,MAAM,CAuCR;AAED,wBAAsB,UAAU,CAC9B,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAC9B,EACE,UAAgB,EAChB,SAAgB,GACjB,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClD,OAAO,CAAC,IAAI,CAAC,CAef"}
package/dist/util.js CHANGED
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.range = exports.sleep = exports.uuid = exports.debugVerbose = exports.debug = void 0;
7
7
  exports.parallelForEach = parallelForEach;
8
+ exports.safePromiseAll = safePromiseAll;
8
9
  exports.pick = pick;
9
10
  exports.jsonClone = jsonClone;
10
11
  exports.makeConnectionString = makeConnectionString;
@@ -27,6 +28,16 @@ async function parallelForEach(iterable, fn) {
27
28
  }
28
29
  return await Promise.allSettled(result);
29
30
  }
31
+ async function safePromiseAll(promises) {
32
+ const results = await Promise.allSettled(promises);
33
+ const rejected = results.filter((r) => r.status === 'rejected');
34
+ if (rejected.length) {
35
+ if (rejected.length === 1)
36
+ throw rejected[0].reason;
37
+ throw new AggregateError([rejected.map((r) => r.reason)], `${rejected.length} errors: ${rejected.map((r) => r.reason).join(', ')}`);
38
+ }
39
+ return results.map((r) => r.value);
40
+ }
30
41
  function pick(obj, keys) {
31
42
  const ret = {};
32
43
  for (const key of Object.keys(obj)) {
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "email": "compass@mongodb.com"
14
14
  },
15
15
  "homepage": "https://github.com/mongodb-js/devtools-shared",
16
- "version": "6.5.4",
16
+ "version": "6.6.1",
17
17
  "repository": {
18
18
  "type": "git",
19
19
  "url": "https://github.com/mongodb-js/devtools-shared.git"
@@ -56,9 +56,9 @@
56
56
  "reformat": "npm run prettier -- --write ."
57
57
  },
58
58
  "dependencies": {
59
- "@mongodb-js/mongodb-downloader": "^1.1.6",
60
- "@mongodb-js/oidc-mock-provider": "^0.13.5",
61
- "@mongodb-js/saslprep": "^1.4.5",
59
+ "@mongodb-js/mongodb-downloader": "^1.1.7",
60
+ "@mongodb-js/oidc-mock-provider": "^0.13.6",
61
+ "@mongodb-js/saslprep": "^1.4.6",
62
62
  "@peculiar/x509": "^1.14.2",
63
63
  "debug": "^4.4.0",
64
64
  "mongodb": "^6.9.0 || ^7.0.0",
@@ -69,7 +69,7 @@
69
69
  "@mongodb-js/eslint-config-devtools": "^0.11.3",
70
70
  "@mongodb-js/mocha-config-devtools": "^1.1.0",
71
71
  "@mongodb-js/prettier-config-devtools": "^1.0.2",
72
- "@mongodb-js/tsconfig-devtools": "^1.1.0",
72
+ "@mongodb-js/tsconfig-devtools": "^1.1.1",
73
73
  "@types/chai": "^4.2.21",
74
74
  "@types/debug": "^4.1.8",
75
75
  "@types/mocha": "^9.1.1",
@@ -86,5 +86,5 @@
86
86
  "sinon": "^9.2.3",
87
87
  "typescript": "^5.0.4"
88
88
  },
89
- "gitHead": "81c2cb856d44c84b465137409c9b9655ce452fde"
89
+ "gitHead": "351125bdca5cc071e432b25605b411b00b2eb336"
90
90
  }