@cumulus/cmrjs 18.0.0 → 18.1.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/cmr-utils.d.ts CHANGED
@@ -29,7 +29,7 @@ export function constructOnlineAccessUrl({ file, distEndpoint, bucketTypes, urlT
29
29
  useDirectS3Type: boolean;
30
30
  }): (Object | undefined);
31
31
  /**
32
- * Construct a list of online access urls.
32
+ * Construct a list of online access urls grouped by link type.
33
33
  *
34
34
  * @param {Object} params - input parameters
35
35
  * @param {Array<Object>} params.files - array of file objects
@@ -40,7 +40,7 @@ export function constructOnlineAccessUrl({ file, distEndpoint, bucketTypes, urlT
40
40
  * for all distribution bucketss
41
41
  * @param {boolean} params.useDirectS3Type - indicate if direct s3 access type is used
42
42
  * @returns {Promise<[{URL: string, URLDescription: string}]>} an array of
43
- * online access url objects
43
+ * online access url objects grouped by link type.
44
44
  */
45
45
  export function constructOnlineAccessUrls({ files, distEndpoint, bucketTypes, cmrGranuleUrlType, distributionBucketMap, useDirectS3Type, }: {
46
46
  files: Array<Object>;
@@ -1 +1 @@
1
- {"version":3,"file":"cmr-utils.d.ts","sourceRoot":"","sources":["src/cmr-utils.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmr-utils.d.ts","sourceRoot":"","sources":["src/cmr-utils.js"],"names":[],"mappings":"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"}
package/cmr-utils.js CHANGED
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
  const got = require('got');
3
- const flatten = require('lodash/flatten');
4
3
  const get = require('lodash/get');
5
4
  const pick = require('lodash/pick');
6
5
  const set = require('lodash/set');
@@ -10,7 +9,7 @@ const path = require('path');
10
9
  const urljoin = require('url-join');
11
10
  const xml2js = require('xml2js');
12
11
  const omit = require('lodash/omit');
13
- const { buildS3Uri, parseS3Uri, promiseS3Upload, s3GetObjectTagging, s3TagSetToQueryString, waitForObject, getObjectStreamContents, } = require('@cumulus/aws-client/S3');
12
+ const { buildS3Uri, parseS3Uri, promiseS3Upload, s3GetObjectTagging, s3ObjectExists, s3TagSetToQueryString, waitForObject, getObjectStreamContents, } = require('@cumulus/aws-client/S3');
14
13
  const { s3 } = require('@cumulus/aws-client/services');
15
14
  const { getSecretString } = require('@cumulus/aws-client/SecretsManager');
16
15
  const launchpad = require('@cumulus/launchpad-auth');
@@ -434,7 +433,7 @@ function constructOnlineAccessUrl({ file, distEndpoint, bucketTypes, urlType = '
434
433
  return undefined;
435
434
  }
436
435
  /**
437
- * Construct a list of online access urls.
436
+ * Construct a list of online access urls grouped by link type.
438
437
  *
439
438
  * @param {Object} params - input parameters
440
439
  * @param {Array<Object>} params.files - array of file objects
@@ -445,14 +444,13 @@ function constructOnlineAccessUrl({ file, distEndpoint, bucketTypes, urlType = '
445
444
  * for all distribution bucketss
446
445
  * @param {boolean} params.useDirectS3Type - indicate if direct s3 access type is used
447
446
  * @returns {Promise<[{URL: string, URLDescription: string}]>} an array of
448
- * online access url objects
447
+ * online access url objects grouped by link type.
449
448
  */
450
449
  function constructOnlineAccessUrls({ files, distEndpoint, bucketTypes, cmrGranuleUrlType = 'both', distributionBucketMap, useDirectS3Type = false, }) {
451
450
  if (['distribution', 'both'].includes(cmrGranuleUrlType) && !distEndpoint) {
452
451
  throw new Error(`cmrGranuleUrlType is ${cmrGranuleUrlType}, but no distribution endpoint is configured.`);
453
452
  }
454
- const urlListCalls = files.map((file) => {
455
- const urls = [];
453
+ const [distributionUrls, s3Urls] = files.reduce(([distributionAcc, s3Acc], file) => {
456
454
  if (['both', 'distribution'].includes(cmrGranuleUrlType)) {
457
455
  const url = constructOnlineAccessUrl({
458
456
  file,
@@ -462,7 +460,7 @@ function constructOnlineAccessUrls({ files, distEndpoint, bucketTypes, cmrGranul
462
460
  distributionBucketMap,
463
461
  useDirectS3Type,
464
462
  });
465
- urls.push(url);
463
+ distributionAcc.push(url);
466
464
  }
467
465
  if (['both', 's3'].includes(cmrGranuleUrlType)) {
468
466
  const url = constructOnlineAccessUrl({
@@ -473,11 +471,11 @@ function constructOnlineAccessUrls({ files, distEndpoint, bucketTypes, cmrGranul
473
471
  distributionBucketMap,
474
472
  useDirectS3Type,
475
473
  });
476
- urls.push(url);
474
+ s3Acc.push(url);
477
475
  }
478
- return urls;
479
- });
480
- const urlList = flatten(urlListCalls);
476
+ return [distributionAcc, s3Acc];
477
+ }, [[], []]);
478
+ const urlList = distributionUrls.concat(s3Urls);
481
479
  return urlList.filter((urlObj) => urlObj);
482
480
  }
483
481
  /**
@@ -934,6 +932,10 @@ async function getGranuleTemporalInfo(granule) {
934
932
  if (cmrFile === undefined || cmrFile.length === 0)
935
933
  return {};
936
934
  const cmrFilename = getS3UrlOfFile(cmrFile[0]);
935
+ if (!(await s3ObjectExists(parseS3Uri(cmrFilename)))) {
936
+ log.warn(`getGranuleTemporalInfo cmr file does not exist ${cmrFilename}`);
937
+ return {};
938
+ }
937
939
  if (isCMRISOFilename(cmrFilename)) {
938
940
  const metadata = await metadataObjectFromCMRXMLFile(cmrFilename);
939
941
  const metadataMI = get(metadata, 'gmd:DS_Series.gmd:composedOf.gmd:DS_DataSet.gmd:has.gmi:MI_Metadata');
package/cmr-utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cmr-utils.js","sourceRoot":"","sources":["src/cmr-utils.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmr-utils.js","sourceRoot":"","sources":["src/cmr-utils.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cumulus/cmrjs",
3
- "version": "18.0.0",
3
+ "version": "18.1.0",
4
4
  "description": "A node SDK for CMR",
5
5
  "engines": {
6
6
  "node": ">=16.19.0"
@@ -34,13 +34,13 @@
34
34
  "author": "Cumulus Authors",
35
35
  "license": "Apache-2.0",
36
36
  "dependencies": {
37
- "@cumulus/aws-client": "18.0.0",
38
- "@cumulus/cmr-client": "18.0.0",
39
- "@cumulus/common": "18.0.0",
40
- "@cumulus/distribution-utils": "18.0.0",
41
- "@cumulus/errors": "18.0.0",
42
- "@cumulus/launchpad-auth": "18.0.0",
43
- "@cumulus/logger": "18.0.0",
37
+ "@cumulus/aws-client": "18.1.0",
38
+ "@cumulus/cmr-client": "18.1.0",
39
+ "@cumulus/common": "18.1.0",
40
+ "@cumulus/distribution-utils": "18.1.0",
41
+ "@cumulus/errors": "18.1.0",
42
+ "@cumulus/launchpad-auth": "18.1.0",
43
+ "@cumulus/logger": "18.1.0",
44
44
  "got": "^11.8.1",
45
45
  "js2xmlparser": "^4.0.0",
46
46
  "lodash": "^4.17.21",
@@ -48,5 +48,5 @@
48
48
  "url-join": "^1.0.0",
49
49
  "xml2js": "0.5.0"
50
50
  },
51
- "gitHead": "43bcef7c0d979a05cd2dd559b811f4ac8f85a9b1"
51
+ "gitHead": "8428a02e0903d8d303c7dd36215aa6a24906e07b"
52
52
  }
package/src/cmr-utils.js CHANGED
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  const got = require('got');
4
- const flatten = require('lodash/flatten');
5
4
  const get = require('lodash/get');
6
5
  const pick = require('lodash/pick');
7
6
  const set = require('lodash/set');
@@ -16,6 +15,7 @@ const {
16
15
  parseS3Uri,
17
16
  promiseS3Upload,
18
17
  s3GetObjectTagging,
18
+ s3ObjectExists,
19
19
  s3TagSetToQueryString,
20
20
  waitForObject,
21
21
  getObjectStreamContents,
@@ -487,7 +487,7 @@ function constructOnlineAccessUrl({
487
487
  }
488
488
 
489
489
  /**
490
- * Construct a list of online access urls.
490
+ * Construct a list of online access urls grouped by link type.
491
491
  *
492
492
  * @param {Object} params - input parameters
493
493
  * @param {Array<Object>} params.files - array of file objects
@@ -498,7 +498,7 @@ function constructOnlineAccessUrl({
498
498
  * for all distribution bucketss
499
499
  * @param {boolean} params.useDirectS3Type - indicate if direct s3 access type is used
500
500
  * @returns {Promise<[{URL: string, URLDescription: string}]>} an array of
501
- * online access url objects
501
+ * online access url objects grouped by link type.
502
502
  */
503
503
  function constructOnlineAccessUrls({
504
504
  files,
@@ -512,8 +512,7 @@ function constructOnlineAccessUrls({
512
512
  throw new Error(`cmrGranuleUrlType is ${cmrGranuleUrlType}, but no distribution endpoint is configured.`);
513
513
  }
514
514
 
515
- const urlListCalls = files.map((file) => {
516
- const urls = [];
515
+ const [distributionUrls, s3Urls] = files.reduce(([distributionAcc, s3Acc], file) => {
517
516
  if (['both', 'distribution'].includes(cmrGranuleUrlType)) {
518
517
  const url = constructOnlineAccessUrl({
519
518
  file,
@@ -523,7 +522,7 @@ function constructOnlineAccessUrls({
523
522
  distributionBucketMap,
524
523
  useDirectS3Type,
525
524
  });
526
- urls.push(url);
525
+ distributionAcc.push(url);
527
526
  }
528
527
  if (['both', 's3'].includes(cmrGranuleUrlType)) {
529
528
  const url = constructOnlineAccessUrl({
@@ -534,11 +533,11 @@ function constructOnlineAccessUrls({
534
533
  distributionBucketMap,
535
534
  useDirectS3Type,
536
535
  });
537
- urls.push(url);
536
+ s3Acc.push(url);
538
537
  }
539
- return urls;
540
- });
541
- const urlList = flatten(urlListCalls);
538
+ return [distributionAcc, s3Acc];
539
+ }, [[], []]);
540
+ const urlList = distributionUrls.concat(s3Urls);
542
541
  return urlList.filter((urlObj) => urlObj);
543
542
  }
544
543
 
@@ -1100,6 +1099,11 @@ async function getGranuleTemporalInfo(granule) {
1100
1099
 
1101
1100
  const cmrFilename = getS3UrlOfFile(cmrFile[0]);
1102
1101
 
1102
+ if (!(await s3ObjectExists(parseS3Uri(cmrFilename)))) {
1103
+ log.warn(`getGranuleTemporalInfo cmr file does not exist ${cmrFilename}`);
1104
+ return {};
1105
+ }
1106
+
1103
1107
  if (isCMRISOFilename(cmrFilename)) {
1104
1108
  const metadata = await metadataObjectFromCMRXMLFile(cmrFilename);
1105
1109
  const metadataMI = get(