@cumulus/common
Advanced tools
Changelog
[v3.0.0] 2020-10-7
CUMULUS-2099
meta.queues
in workflow configuration must be replaced with references to queue URLs from Terraform resources. See the updated data cookbooks or example Discover Granules workflow configuration.CUMULUS-2111
Before you re-deploy your cumulus-tf
module, note that the [thin-egress-app
][thin-egress-app] is no longer deployed by default as part of the cumulus
module, so you must add the TEA module to your deployment and manually modify your Terraform state to avoid losing your API gateway and impacting any Cloudfront endpoints pointing to those gateways. If you don't care about losing your API gateway and impacting Cloudfront endpoints, you can ignore the instructions for manually modifying state.
Add the [thin-egress-app
][thin-egress-app] module to your cumulus-tf
deployment as shown in the Cumulus example deployment.
tea_stack_name
variable to the cumulus
module and the stack_name
variable to the thin_egress_app
module must matchstage_name
variable to the thin_egress_app
module, the value of the tea_api_gateway_stage
variable to the cumulus
module must match itIf you want to preserve your existing thin-egress-app
API gateway and avoid having to update your Cloudfront endpoint for distribution, then you must follow these instructions: https://nasa.github.io/cumulus/docs/upgrade-notes/migrate_tea_standalone. Otherwise, you can re-deploy as usual.
If you provide your own custom bucket map to TEA as a standalone module, you must ensure that your custom bucket map includes mappings for the protected
and public
buckets specified in your cumulus-tf/terraform.tfvars
, otherwise Cumulus may not be able to determine the correct distribution URL for ingested files and you may encounter errors
CUMULUS-2197
ems_deploy
is set to false
by default, which will delete your EMS resources.ems_deploy
variable set to true
in your cumulus-tf/terraform.tfvars
Granule Inventory
's
/reconciliationReport
returns. The user (dashboard) must read the value
of url
from the return to get the s3SignedURL and then download the report.meta.queues
has been removed from Cumulus core workflow messages.@cumulus/sf-sqs-report
workflow task no longer reads the reporting queue URL from input.meta.queues.reporting
on the incoming event. Instead, it requires that the queue URL be set as the reporting_queue_url
environment variable on the deployed Lambda.thin-egress-app
module has be removed from tf-modules/distribution
, which is a part of the tf-modules/cumulus
module. Thus, the thin-egress-app
module is no longer deployed for you by default. See the migration steps for details about how to add deployment for the thin-egress-app
.parse-pdr
task has been updated to respect the NODE_NAME
property in
a PDR's FILE_GROUP
. If a NODE_NAME
is present, the task will query the
Cumulus API for a provider with that host. If a provider is found, the
output granule from the task will contain a provider
property containing
that provider. If NODE_NAME
is set but a provider with that host cannot be
found in the API, or if multiple providers are found with that same host,
the task will fail.queue-granules
task has been updated to expect an optional
granule.provider
property on each granule. If present, the granule will be
enqueued using that provider. If not present, the task's config.provider
will be used instead.@cumulus/api-client.providers.getProviders
function now takes a
queryStringParameters
parameter which can be used to filter the providers
which are returned@cumulus/aws-client/S3.getS3ObjectReadStreamAsync
function has been
removed. It read the entire S3 object into memory before returning a read
stream, which could cause Lambdas to run out of memory. Use
@cumulus/aws-client/S3.getObjectReadStream
instead.@cumulus/ingest/util.lookupMimeType
function now returns undefined
rather than null
if the mime type could not be found.@cumulus/ingest/lock.removeLock
function now returns undefined
@cumulus/ingest/granule.generateMoveFileParams
function now returns
source: undefined
and target :undefined
on the response object if either could not be
determined. Previously, null
had been returned.@cumulus/ingest/recursion.recursion
function must now be imported using
const { recursion } = require('@cumulus/ingest/recursion');
@cumulus/ingest/granule.getRenamedS3File
function has been renamed to
listVersionedObjects
@cumulus/common.http
has been removed@cumulus/common/http.download
has been removed@cumulus/aws-client/S3.getObject
to get an AWS S3 object@cumulus/aws-client/S3.waitForObject
to get an AWS S3 object,
retrying, if necessarystartTimestamp
and endTimestamp
parameters to endpoint
reconcilationReports
. Setting these values will filter the returned
report to cumulus data that falls within the timestamps. It also causes the
report to be one directional, meaning cumulus is only reconciled with CMR,
but not the other direction. The Granules will be filtered by their
updatedAt
values. Collections are filtered by the updatedAt time of their
granules, i.e. Collections with granules that are updatedAt a time between
the time parameters will be returned in the reconciliation reports.startTimestamp
and endTimestamp
parameters to create-reconciliation-reports
lambda function. If either of these params is passed in with a value that can be
converted to a date object, the inter-platform comparison between Cumulus and CMR will
be one way. That is, collections, granules, and files will be filtered by time for
those found in Cumulus and only those compared to the CMR holdings. For the moment
there is not enough information to change the internal consistency check, and S3 vs
Cumulus comparisons are unchanged by the timestamps.location
as parameter to /reconciliationReports
endpoint. Options are S3
resulting in a S3 vs. Cumulus database search or CMR
resulting in CMR vs. Cumulus database search.granuleId
as input parameter to /reconcilationReports
endpoint. Limits inputs parameters to either collectionId
or granuleId
and will fail to create the report if both are provided. Adding granuleId
will find collections in Cumulus by granuleId and compare those one way
with those in CMR./reconciliationReports
now validates any input json before starting the
async operation and the lambda handler no longer validates input
parameters.collectionId
parameter to the /reconcilationReports
endpoint. Setting this value will limit the scope of the reconcilation
report to only the input collectionId when comparing Cumulus and
CMR. collectionId
is provided an array of strings e.g. [shortname___version, shortname2___version2]
update-cmr-access-constraints
, that will set access constraints in CMR Metadata.
Currently supports UMMG-JSON and Echo10XML, where it will configure AccessConstraints
and
RestrictionFlag/RestrictionComment
, respectively.cumulus
module:
tea_api_egress_log_group
tea_external_api_endpoint
tea_internal_api_endpoint
tea_rest_api_id
tea_rest_api_root_resource_id
tea_stack_name
distribution
module:
tea_api_egress_log_group
tea_external_api_endpoint
tea_internal_api_endpoint
tea_rest_api_id
tea_rest_api_root_resource_id
tea_stack_name
@cumulus/api/lambdas/internal-reconciliation-report
, so create-reconciliation-report
lambda can create Internal
reconciliation report@cumulus/api/models/granule.unpublishAndDeleteGranule
which
unpublishes a granule from CMR and deletes it from Cumulus, but does not
update the record to published: false
before deletioncumulus-rds-tf
DB cluster module to tf-modules
that adds a
serverless RDS Aurora/PostgreSQL database cluster to meet the PostgreSQL
requirements for future releases.rds_security_group
for database accessdata-migration1
Terraform module and Lambda to migrate data from Dynamo to RDS
rds_connection_heartbeat
to cumulus
and data-migration
tf
modules. If set to true, this diagnostic variable instructs Core's database
code to fire off a connection 'heartbeat' query and log the timing/results
for diagnostic purposes, and retry certain connection timeouts once.
This option is disabled by defaultInternal
reconciliation reportdata-migration1
Lambda for migrating providers data from Dynamo to RDS
executionNamePrefix
property. If set, any executions
triggered as a result of that rule will use that prefix in the name of the
execution.QueueGranules
task now supports an executionNamePrefix
property. Any
executions queued by that task will use that prefix in the name of the
execution. See the
example workflow
for usage.QueuePdrs
task now supports an executionNamePrefix
config property.
Any executions queued by that task will use that prefix in the name of the
execution. See the
example workflow
for usage./reconciliationReport
endpoint. The new report
is Granule Inventory
. This report is a CSV file of all the granules in
the Cumulus DB. This report will eventually replace the existing
granules-csv
endpoint which has been deprecated.ems_deploy
variable to the cumulus
module. This is set to false by default, except
for our example deployment, where it is needed for integration tests.applyWorkflow
functionality on the granules endpoint to take a meta
property to pass into the workflow message.BULK_GRANULE
functionality on the granules endpoint to support the above applyWorkflow
change.distribution_api_gateway_stage
variable for cumulus
module to tea_api_gateway_stage
api_gateway_stage
variable for distribution
module to tea_api_gateway_stage
/reconciliationReport
's file reconciliation to include "EXTENDED METADATA"
as a valid CMR relatedUrls Type.cumulus
elasticsearch index results in the collection granule stats
queries failing for the collections list api endpointactiveCollections
query only returning 10 resultsQueueGranules
task. That task now has a
config.concurrency
option that defaults to 3
.public-read
ACL from the move-granules
taskcumulus
index is recreated and attached to an alias if it has been previously deleted/token
not working when using a Cloudfront endpoint to access the Cumulus API with Launchpad authentication enabled. The redirect should now work properly whether you are using a plain API gateway URL or a Cloudfront endpoint pointing at an API gateway URL.@cumulus/aws-client/S3.getS3Object()
@cumulus/message/Queue.getQueueNameByUrl()
@cumulus/message/Queue.getQueueName()
@cumulus/api/endpoints/granules-csv/list()
distribution_url
and distribution_redirect_uri
outputs from the cumulus
modulecumulus
module:
distribution_url
log_api_gateway_to_cloudwatch
thin_egress_cookie_domain
thin_egress_domain_cert_arn
thin_egress_download_role_in_region_arn
thin_egress_jwt_algo
thin_egress_jwt_secret_name
thin_egress_lambda_code_dependency_archive_key
thin_egress_stack_name
distribution
module:
distribution_url
internal_tea_api
rest_api_id
thin_egress_app_redirect_uri
distribution
module:
bucket_map_key
distribution_url
log_api_gateway_to_cloudwatch
thin_egress_cookie_domain
thin_egress_domain_cert_arn
thin_egress_download_role_in_region_arn
thin_egress_jwt_algo
thin_egress_jwt_secret_name
thin_egress_lambda_code_dependency_archive_key
providerSecretsMigration
and verifyProviderSecretsMigration
lambdas@cumulus/sf-sns-report
task@cumulus/aws-client/S3.calculateS3ObjectChecksum
@cumulus/aws-client/S3.getS3ObjectReadStream
@cumulus/cmrjs.getFullMetadata
@cumulus/cmrjs.getMetadata
@cumulus/common/util.isNil
@cumulus/common/util.isNull
@cumulus/common/util.isUndefined
@cumulus/common/util.lookupMimeType
@cumulus/common/util.mkdtempSync
@cumulus/common/util.negate
@cumulus/common/util.noop
@cumulus/common/util.omit
@cumulus/common/util.renameProperty
@cumulus/common/util.sleep
@cumulus/common/util.thread
@cumulus/ingest/granule.copyGranuleFile
@cumulus/ingest/granule.moveGranuleFile
@cumulus/integration-tests/api/rules.deleteRule
@cumulus/integration-tests/api/rules.getRule
@cumulus/integration-tests/api/rules.listRules
@cumulus/integration-tests/api/rules.postRule
@cumulus/integration-tests/api/rules.rerunRule
@cumulus/integration-tests/api/rules.updateRule
@cumulus/integration-tests/sfnStep.parseStepMessage
@cumulus/message/Queue.getQueueName
@cumulus/message/Queue.getQueueNameByUrl
Changelog
[v2.0.7] 2020-10-1 - [BACKPORT]
node-forge
dependency to 0.10.0 to address CVE findingChangelog
[v2.0.6] 2020-09-25 - [BACKPORT]
cumulus
elasticsearch index results in the collection granule stats
queries failing for the collections list api endpointChangelog
[v2.0.5] 2020-09-15 - [BACKPORT]
thin_egress_stack_name
variable to cumulus
and distribution
Terraform modules to allow overriding the default Cloudformation stack name used for the thin-egress-app
. Please note that if you change/set this value for an existing deployment, it will destroy and re-create your API gateway for the thin-egress-app
.Changelog
[v2.0.3] 2020-09-02 - [BACKPORT]
CUMULUS-1961
activeCollections
query only returning 10 resultsCUMULUS-2039
@cumulus/aws-client/S3.getS3ObjectReadStreamAsync
function has been
removed. It read the entire S3 object into memory before returning a read
stream, which could cause Lambdas to run out of memory. Use
@cumulus/aws-client/S3.getObjectReadStream
instead.Changelog
v2.0.2+ Backport releases
Release v2.0.1 was the last release on the 2.0.x release series.
Changes after this version on the 2.0.x release series are limited security/requested feature patches and will not be ported forward to future releases unless there is a corresponding CHANGELOG entry.
For up-to-date CHANGELOG for the maintenance release branch see CHANGELOG.md from the 2.0.x branch.
For the most recent release information for the maintenance branch please see the release page
Changelog
[v2.0.1] 2020-07-28
multiple sort keys
support to @cumulus/api
@cumulus/message/Queue.getQueueUrl
to get the queue URL specified in a Cumulus workflow message, if any.@cumulus/launchpad-auth
causing Launchpad token requests to failChangelog
[v2.0.0] 2020-07-23
@cumulus/api-client
package
CumulusApiClientError
class must now be imported using
const { CumulusApiClientError } = require('@cumulus/api-client/CumulusApiClientError')
@cumulus/sftp-client/SftpClient
class must now be imported using
const { SftpClient } = require('@cumulus/sftp-client');
@cumulus/ingest/SftpProviderClient
no longer implicitly connect
when download
, list
, or sync
are called. You must call connect
on the
provider client before issuing one of those calls. Failure to do so will
result in a "Client not connected" exception being thrown.@cumulus/ingest/SftpProviderClient
no longer implicitly
disconnect from the SFTP server when list
is called.@cumulus/sftp-client/SftpClient
must now be explicitly closed
by calling .end()
@cumulus/sftp-client/SftpClient
no longer implicitly connect to
the server when download
, unlink
, syncToS3
, syncFromS3
, and list
are
called. You must explicitly call connect
before calling one of those
methods.@cumulus/common
package
cloudwatch-event.getSfEventMessageObject()
now returns undefined
if the
message could not be found or could not be parsed. It previously returned
null
.S3KeyPairProvider.decrypt()
now throws an exception if the bucket
containing the key cannot be determined.S3KeyPairProvider.decrypt()
now throws an exception if the stack cannot be
determined.S3KeyPairProvider.encrypt()
now throws an exception if the bucket
containing the key cannot be determined.S3KeyPairProvider.encrypt()
now throws an exception if the stack cannot be
determined.sns-event.getSnsEventMessageObject()
now returns undefined
if it could
not be parsed. It previously returned null
.aws
module has been removed.BucketsConfig.buckets
property is now read-only and privatetest-utils.validateConfig()
function now resolves to undefined
rather than true
.test-utils.validateInput()
function now resolves to undefined
rather
than true
.test-utils.validateOutput()
function now resolves to undefined
rather than true
.S3KeyPairProvider.retrieveKey()
function has been removed.@cumulus/cmrjs
package
@cumulus/cmrjs.constructOnlineAccessUrl()
and
@cumulus/cmrjs/cmr-utils.constructOnlineAccessUrl()
previously took a
buckets
parameter, which was an instance of
@cumulus/common/BucketsConfig
. They now take a bucketTypes
parameter,
which is a simple object mapping bucket names to bucket types. Example:
{ 'private-1': 'private', 'public-1': 'public' }
@cumulus/cmrjs.reconcileCMRMetadata()
and
@cumulus/cmrjs/cmr-utils.reconcileCMRMetadata()
now take a required
bucketTypes
parameter, which is a simple object mapping bucket names to
bucket types. Example: { 'private-1': 'private', 'public-1': 'public' }
@cumulus/cmrjs.updateCMRMetadata()
and
@cumulus/cmrjs/cmr-utils.updateCMRMetadata()
previously took an optional
inBuckets
parameter, which was an instance of
@cumulus/common/BucketsConfig
. They now take a required bucketTypes
parameter, which is a simple object mapping bucket names to bucket types.
Example: { 'private-1': 'private', 'public-1': 'public' }
cumuluss/cumulus-ecs-task
Docker image must be updated to
cumuluss/cumulus-ecs-task:1.7.0
. This can be done by updating the image
property of any tasks defined using the cumulus_ecs_service
Terraform
module.@cumulus/aws-client/S3
getObjectSize
function has changed. It now takes a
params object with three properties:
getObjectSize
function will no longer retry if the object does not
exist@cumulus/message/Collections.getCollectionIdFromMessage
now throws a
CumulusMessageError
if collectionName
and collectionVersion
are missing
from meta.collection
. Previously this method would return
'undefined___undefined'
instead@cumulus/integration-tests/addCollections
now returns an array of collections that
were added rather than the count of added collections@cumulus/common/util.uuid()
function has been removed@cumulus/aws-client/S3.multipartCopyObject
now returns an object with the
AWS etag
of the destination object@cumulus/ingest/S3ProviderClient.list
now sets a file object's path
property to undefined
instead of null
when the file is at the top level
of its bucketsync
methods of the following classes in the @cumulus/ingest
package
now return an object with the AWS s3uri
and etag
of the destination file
(they previously returned only a string representing the S3 URI)
FtpProviderClient
HttpProviderClient
S3ProviderClient
SftpProviderClient
@cumulus/cmr-js/cmr-utils
were made
async, and added distributionBucketMap as a parameter:
DiscoverPdrs
task now expects provider_path
to be provided at
event.config.provider_path
, not event.config.collection.provider_path
event.config.provider_path
is now a required parameter of the
DiscoverPdrs
taskevent.config.collection
is no longer a parameter to the DiscoverPdrs
taskprovider_path
property. The tasks that
relied on that property are now referencing config.meta.provider_path
.
Workflows should be updated accordingly./bulkDelete
to
/granules/bulkDelete
file.hdf
is the filename of the given resource) as the resource description instead of "File to download"Due to an issue with the AWS API Gateway and how the Thin Egress App Cloudformation template applies updates, you may need to redeploy your
thin-egress-app-EgressGateway
manually as a one time migration step. If your deployment fails with an
error similar to:
Error: Lambda function (<stack>-tf-TeaCache) returned error: ({"errorType":"HTTPError","errorMessage":"Response code 404 (Not Found)"})
Then follow the AWS
instructions
to Redeploy a REST API to a stage
for your egress API and re-run terraform apply
.
CUMULUS-2081
CUMULUS-1902
CUMULUS-2058
lambda_processing_role_name
as an output from the cumulus
module
to provide the processing role nameCUMULUS-1417
checksumFor
property to collection files
config. Set this
property on a checksum file's definition matching the regex
of the target
file. More details in the 'Data Cookbooks
Setup'
documentation.checksumFor
validation to collections model.CUMULUS-1956
@cumulus/earthata-login-client
package/s3credentials
endpoint that is deployed as part of distribution now
supports authentication using tokens created by a different application. If
a request contains the EDL-ClientId
and EDL-Token
headers,
authentication will be handled using that token rather than attempting to
use OAuth.@cumulus/earthata-login-client.getTokenUsername()
now accepts an
xRequestId
argument, which will be included as the X-Request-Id
header
when calling Earthdata Login.s3Credentials
endpoint is invoked with an EDL token and an
X-Request-Id
header, that X-Request-Id
header will be forwarded to
Earthata Login.CUMULUS-1957
EDL-Client-Name
header
is set, @the-client-name
will be appended to the end of the Earthdata
Login username that is used as the RoleSessionName
of the temporary IAM
credentials. This value will show up in the AWS S3 server access logs.CUMULUS-1958
bucket_map_key
to the cumulus
terraform module as an override for the default .yaml values that are passed
to TEA by Core. Using this option requires that each configured
Cumulus 'distribution' bucket (e.g. public/protected buckets) have a single
TEA mapping. Multiple maps per bucket are not supported.distribution_bucket_map
.CUMULUS-1961
CUMULUS-1970
add-missing-file-checksums
workflow task@cumulus/aws-client/S3.calculateObjectHash()
function@cumulus/aws-client/S3.getObjectReadStream()
functionCUMULUS-1887
CUMULUS-2019
infix
search to es query builder @cumulus/api/es/es/queries
to
support partial matching of the keywordsCUMULUS-2032
httpListTimeout
to set the default timeout for discovery HTTP/HTTPS
requests, and updates the default for the provider to 5 minutes (300 seconds).CUMULUS-176
CUMULUS-1861
sfEventSqsToDbRecords
and
sfEventSqsToDbRecordsInputQueue
. Previously failure to write a database
record would result in lambda success, and an error log in the CloudWatch
logs. The lambda has been updated to manually add a record to
the sfEventSqsToDbRecordsDeadLetterQueue
if the granule, execution, or
pdr record fails to write, in addition to the previous error logging.CUMULUS-1956
/s3credentials
endpoint that is deployed as part of distribution now
supports authentication using tokens created by a different application. If
a request contains the EDL-ClientId
and EDL-Token
headers,
authentication will be handled using that token rather than attempting to
use OAuth.CUMULUS-1977
/granules/bulk
now returns a 202 status on a successful
response instead of a 200 response/granules/<granule-id>
now returns a 404 status if the
granule record was already deleted@cumulus/api/models/Granule.update()
now returns the updated granule
record/granules/bulkDelete
API endpoint to support deleting
granules specified by ID or returned by the provided query in the request
body. If the request is successful, the endpoint returns the async operation
ID that has been started to remove the granules.
@cumulus/api/models/Granule.getRecord()
method to return raw record
from DynamoDB@cumulus/api/models/Granule.delete()
method which handles deleting
the granule record from DynamoDB and the granule files from S3CUMULUS-1982
globalConnectionLimit
property of providers is now optional and
defaults to "unlimited"CUMULUS-1997
launchpad
configuration to @cumulus/hyrax-metadata-updates
task config schema.CUMULUS-1991
@cumulus/cmrjs/src/cmr-utils/constructOnlineAccessUrls()
now throws an error if cmrGranuleUrlType = "distribution"
and no distribution endpoint argument is providedCUMULUS-2011
CUMULUS-2016
CUMULUS-1991
DISTRIBUTION_ENDPOINT
environment variable for API lambdas. This environment variable is required for API requests to move granules.CUMULUS-1961
@cumulus/api-client
@cumulus/aws-client/S3.calculateS3ObjectChecksum()
@cumulus/aws-client/S3.getS3ObjectReadStream()
@cumulus/common/log.convertLogLevel()
@cumulus/collection-config-store
@cumulus/common/util.sleep()
CUMULUS-1930
@cumulus/common/log.convertLogLevel()
@cumulus/common/util.isNull()
@cumulus/common/util.isUndefined()
@cumulus/common/util.negate()
@cumulus/common/util.noop()
@cumulus/common/util.isNil()
@cumulus/common/util.renameProperty()
@cumulus/common/util.lookupMimeType()
@cumulus/common/util.thread()
@cumulus/common/util.mkdtempSync()
@cumulus/common.bucketsConfigJsonObject
function has been
removed@cumulus/common.CollectionConfigStore
class has been removed@cumulus/common.concurrency
module has been removed@cumulus/common.constructCollectionId
function has been
removed@cumulus/common.launchpad
module has been removed@cumulus/common.LaunchpadToken
class has been removed@cumulus/common.Semaphore
class has been removed@cumulus/common.stringUtils
module has been removed@cumulus/common/aws.cloudwatchlogs
function has been removed@cumulus/common/aws.deleteS3Files
function has been removed@cumulus/common/aws.deleteS3Object
function has been removed@cumulus/common/aws.dynamodb
function has been removed@cumulus/common/aws.dynamodbDocClient
function has been
removed@cumulus/common/aws.getExecutionArn
function has been removed@cumulus/common/aws.headObject
function has been removed@cumulus/common/aws.listS3ObjectsV2
function has been removed@cumulus/common/aws.parseS3Uri
function has been removed@cumulus/common/aws.promiseS3Upload
function has been removed@cumulus/common/aws.recursivelyDeleteS3Bucket
function has
been removed@cumulus/common/aws.s3CopyObject
function has been removed@cumulus/common/aws.s3ObjectExists
function has been removed@cumulus/common/aws.s3PutObject
function has been removed@cumulus/common/bucketsConfigJsonObject
function has been
removed@cumulus/common/CloudWatchLogger
class has been removed@cumulus/common/collection-config-store.CollectionConfigStore
class has been removed@cumulus/common/collection-config-store.constructCollectionId
function has been removed@cumulus/common/concurrency.limit
function has been removed@cumulus/common/concurrency.mapTolerant
function has been
removed@cumulus/common/concurrency.promiseUrl
function has been
removed@cumulus/common/concurrency.toPromise
function has been
removed@cumulus/common/concurrency.unless
function has been removed@cumulus/common/config.parseConfig
function has been removed@cumulus/common/config.resolveResource
function has been
removed@cumulus/common/DynamoDb.get
function has been removed@cumulus/common/DynamoDb.scan
function has been removed@cumulus/common/FieldPattern
class has been removed@cumulus/common/launchpad.getLaunchpadToken
function has been
removed@cumulus/common/launchpad.validateLaunchpadToken
function has
been removed@cumulus/common/LaunchpadToken
class has been removed@cumulus/common/message.buildCumulusMeta
function has been
removed@cumulus/common/message.buildQueueMessageFromTemplate
function has been removed@cumulus/common/message.getCollectionIdFromMessage
function
has been removed@cumulus/common/message.getMaximumExecutions
function has
been removed@cumulus/common/message.getMessageExecutionArn
function has
been removed@cumulus/common/message.getMessageExecutionName
function has
been removed@cumulus/common/message.getMessageFromTemplate
function has
been removed@cumulus/common/message.getMessageGranules
function has been
removed@cumulus/common/message.getMessageStateMachineArn
function
has been removed@cumulus/common/message.getQueueName
function has been
removed@cumulus/common/message.getQueueNameByUrl
function has been
removed@cumulus/common/message.hasQueueAndExecutionLimit
function
has been removed@cumulus/common/Semaphore
class has been removed@cumulus/common/string.globalReplace
function has been removed@cumulus/common/string.isNonEmptyString
function has been
removed@cumulus/common/string.isValidHostname
function has been
removed@cumulus/common/string.match
function has been removed@cumulus/common/string.matches
function has been removed@cumulus/common/string.replace
function has been removed@cumulus/common/string.toLower
function has been removed@cumulus/common/string.toUpper
function has been removed@cumulus/common/testUtils.getLocalstackEndpoint
function has been removed@cumulus/common/util.setErrorStack
function has been removed@cumulus/common/util.uuid
function has been removed@cumulus/common/workflows.getWorkflowArn
function has been
removed@cumulus/common/workflows.getWorkflowFile
function has been
removed@cumulus/common/workflows.getWorkflowList
function has been
removed@cumulus/common/workflows.getWorkflowTemplate
function has
been removed@cumulus/aws-client/StepFunctions.toSfnExecutionName()
@cumulus/aws-client/StepFunctions.fromSfnExecutionName()
@cumulus/aws-client/StepFunctions.getExecutionArn()
@cumulus/aws-client/StepFunctions.getExecutionUrl()
@cumulus/aws-client/StepFunctions.getStateMachineArn()
@cumulus/aws-client/StepFunctions.pullStepFunctionEvent()
@cumulus/common/test-utils/throttleOnce()
@cumulus/integration-tests/api/distribution.invokeApiDistributionLambda()
@cumulus/integration-tests/api/distribution.getDistributionApiRedirect()
@cumulus/integration-tests/api/distribution.getDistributionApiFileStream()
Changelog
[v1.24.0] 2020-06-03
CUMULUS-1969
DiscoverPdrs
task now expects provider_path
to be provided at
event.config.provider_path
, not event.config.collection.provider_path
event.config.provider_path
is now a required parameter of the
DiscoverPdrs
taskevent.config.collection
is no longer a parameter to the DiscoverPdrs
taskprovider_path
property. The tasks that
relied on that property are now referencing config.meta.provider_path
.
Workflows should be updated accordingly.CUMULUS-1997
@cumulus/cmr-client/CMRSearchConceptQueue
parameters have been changed to take a cmrSettings
object containing clientId, provider, and auth information. This can be generated using @cumulus/cmrjs/cmr-utils/getCmrSettings
. The cmrEnvironment
variable has been removed.syncChecksumFiles
to the
SyncGranule task. This setting is false
by default, but when set to
true
, all checksum files associated with data files that are downloaded
will be downloaded as well.launchpad
configuration to @cumulus/hyrax-metadata-updates
task config schema.@cumulus/api/launchpadSaml
to support multiple userGroup attributes from the SAML response