@cumulus/integration-tests 10.1.2 → 11.0.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.
package/index.js CHANGED
@@ -328,6 +328,39 @@ const loadProvider = async (params = {}) =>
328
328
  await readJsonFile(params.filename)
329
329
  .then((provider) => buildProvider({ ...params, provider }));
330
330
 
331
+ /**
332
+ * Returns true if provider exists, false otherwise
333
+ * @param {string} stackName
334
+ * @param {string} id
335
+ * @returns {boolean}
336
+ */
337
+ const providerExists = async (stackName, id) => {
338
+ let response;
339
+ const exists = await pRetry(
340
+ async () => {
341
+ try {
342
+ response = await providersApi.getProvider({
343
+ prefix: stackName,
344
+ providerId: id,
345
+ pRetryOptions: {
346
+ retries: 0,
347
+ },
348
+ });
349
+ } catch (error) {
350
+ if (error.statusCode === 404) {
351
+ console.log(`Error: ${error}. Failed to get provider with ID ${id}`);
352
+ return false;
353
+ }
354
+ throw error;
355
+ }
356
+ if (response.statusCode === 200) return true;
357
+ return false;
358
+ },
359
+ { retries: 5, minTimeout: 2000, maxTimeout: 2000 }
360
+ );
361
+ return exists;
362
+ };
363
+
331
364
  /**
332
365
  * add providers to database.
333
366
  *
@@ -358,8 +391,13 @@ async function addProviders(stackName, bucketName, dataDirectory, s3Host, postfi
358
391
 
359
392
  await Promise.all(
360
393
  completeProviders.map(async (provider) => {
361
- await providersApi.deleteProvider({ prefix: stackName, providerId: provider.id });
362
- await providersApi.createProvider({ prefix: stackName, provider: provider });
394
+ if (await providerExists(stackName, provider.id)) {
395
+ await providersApi.deleteProvider({ prefix: stackName, providerId: provider.id });
396
+ }
397
+ await providersApi.createProvider({
398
+ prefix: stackName,
399
+ provider: provider,
400
+ });
363
401
  })
364
402
  );
365
403
 
@@ -393,13 +431,13 @@ async function deleteProviders(stackName, bucketName, providers, postfix) {
393
431
  }
394
432
 
395
433
  /**
396
- * Delete all collections listed from a collections directory
434
+ * Delete all providers listed from a providers directory
397
435
  *
398
436
  * @param {string} stackName - CloudFormation stack name
399
437
  * @param {string} bucket - S3 internal bucket name
400
- * @param {string} providersDirectory - the directory of collection json files
438
+ * @param {string} providersDirectory - the directory of providers json files
401
439
  * @param {string} postfix - string that was appended to provider id
402
- * @returns {number} - number of deleted collections
440
+ * @returns {number} - number of deleted providers
403
441
  */
404
442
  async function cleanupProviders(stackName, bucket, providersDirectory, postfix) {
405
443
  // setProcessEnvironment is not needed by this function, but other code
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cumulus/integration-tests",
3
- "version": "10.1.2",
3
+ "version": "11.0.0",
4
4
  "description": "Integration tests",
5
5
  "bin": {
6
6
  "cumulus-test": "./bin/cli.js"
@@ -28,16 +28,16 @@
28
28
  "author": "Cumulus Authors",
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@cumulus/api": "10.1.2",
32
- "@cumulus/api-client": "10.1.2",
33
- "@cumulus/aws-client": "10.1.2",
34
- "@cumulus/cmr-client": "10.1.2",
35
- "@cumulus/cmrjs": "10.1.2",
36
- "@cumulus/common": "10.1.2",
37
- "@cumulus/launchpad-auth": "10.1.2",
38
- "@cumulus/logger": "10.1.2",
39
- "@cumulus/message": "10.1.2",
40
- "@cumulus/oauth-client": "10.1.2",
31
+ "@cumulus/api": "11.0.0",
32
+ "@cumulus/api-client": "11.0.0",
33
+ "@cumulus/aws-client": "11.0.0",
34
+ "@cumulus/cmr-client": "11.0.0",
35
+ "@cumulus/cmrjs": "11.0.0",
36
+ "@cumulus/common": "11.0.0",
37
+ "@cumulus/launchpad-auth": "11.0.0",
38
+ "@cumulus/logger": "11.0.0",
39
+ "@cumulus/message": "11.0.0",
40
+ "@cumulus/oauth-client": "11.0.0",
41
41
  "aws-sdk": "^2.585.0",
42
42
  "base-64": "^0.1.0",
43
43
  "commander": "^2.15.0",
@@ -56,5 +56,5 @@
56
56
  "uuid": "^3.2.1",
57
57
  "xml2js": "^0.4.19"
58
58
  },
59
- "gitHead": "3b59753fa85064549b70ad8ed4a4ee213c5af313"
59
+ "gitHead": "e922ad12fd94affa6cd60a97a184a465a756c50b"
60
60
  }