Socket
Book a DemoInstallSign in
Socket

@cumulus/hyrax-metadata-updates

Package Overview
Dependencies
Maintainers
6
Versions
140
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cumulus/hyrax-metadata-updates

Update granule metadata with hooks to OPeNDAP URL

latest
Source
npmnpm
Version
21.0.0
Version published
Maintainers
6
Created
Source

@cumulus/hyrax-metadata-updates

Description

This lambda function is responsible for augmenting granule metadata files with the correct Hyrax (OPeNDAP) URL to provide subsetting and reformatting services on your granules. The URL will convey enough information to Hyrax to discover the granule using CMR. Hyrax will then determine the archive location within Cumulus from the granule's metadata.

For example, the Hyrax URL for a granule with short name GLDAS_CLSM025_DA1_D and version 2.2 from collection ID C1233603862-GES_DISC and granule UR GLDAS_CLSM025_DA1_D.2.2:GLDAS_CLSM025_DA1_D.A20030204.022.nc4:

https://opendap.uat.earthdata.nasa.gov/collections/C1233603862-GES_DISC/GLDAS_CLSM025_DA1_D.2.2/granules/GLDAS_CLSM025_DA1_D.2.2:GLDAS_CLSM025_DA1_D.A20030204.022.nc4

/UMM-C:{ShortName}.UMM-C:{Version} between "collections" and "granules" is optional and could be included using addShortnameAndVersionIdToConceptId: true in config.json. By default, it is false.

This url will be added to the Urls portion of the granule metadata as follows,

UMM-G example

"RelatedUrls": [
    ...
    {
        "URL": "opendap.uat.earthdata.nasa.gov/collections/C1233603862-GES_DISC/GLDAS_CLSM025_DA1_D.2.2/granules/GLDAS_CLSM025_DA1_D.2.2:GLDAS_CLSM025_DA1_D.A20030204.022.nc4",
        "Type": "USE SERVICE API",
        "Subtype": "OPENDAP DATA",
        "Description": "OPeNDAP request URL"
    }
]

ECHO-10 example

<OnlineResources>
    ...
    <OnlineResource>
        <URL>https://opendap.uat.earthdata.nasa.gov/collections/C1233603862-GES_DISC/GLDAS_CLSM025_DA1_D.2.2/granules/GLDAS_CLSM025_DA1_D.2.2:GLDAS_CLSM025_DA1_D.A20030204.022.nc4</URL>
        <Description>OPeNDAP request URL</Description>
        <Type>GET DATA : OPENDAP DATA</Type>
    </OnlineResource>
</OnlineResources>

The four properties we need to construct this url are as follows,

PropertySourceNotes
Provider IDConfiguration config.cmr.provider
Collection IDDerived from retrieval of parent collection from CMRThis requires a call to the CMR search API
ShortName--//--optional
Version--//--optional
Granule URGranule metadata:
UMM-G GranuleUR
ECHO10 Granule->GranuleUR
Environmentprocess.env.CMR_ENVIRONMENTSpecifies the environment of Hyrax (e.g. SIT, UAT, PROD)

For more information on configuring a Cumulus Message Adapter task, see the Cumulus workflow input/output documentation.

Config

Config object fields:

field nametypedefaultdescription
bucketstring(required)Name of S3 bucket containing public/private key pair to decrypt CMR credentials
stackstring(required)Name of deployment stack
cmrobject(required)CMR credentials object
addShortnameAndVersionIdToConceptIdbooleanfalseOption to humanize the Hyrax URL. Humanizes when set to true.
skipMetadataValidationbooleanfalseOption to skip metadata validation

Input

Input object fields:

field nametypedefaultdescription
granulesarray<object>(required)List of granule objects

Output

Output object fields:

field nametypedefaultdescription
granulesarray<object>N/AList of granule objects

About Cumulus

Cumulus is a cloud-based data ingest, archive, distribution and management prototype for NASA's future Earth science data streams.

Cumulus Documentation

Contributing

To make a contribution, please see our contributing guidelines.

Keywords

hyrax

FAQs

Package last updated on 10 Sep 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts