Adding an app specific OpenSearch cluster that will support search/filter for DMPs as well as Typeaheads in the new system
Added a DmpIndexer lambda (in it's own directory so it can be managed independently via AWS SAM) that will monitor the DynamoStream on the DMPs table and update the OpenSearch index for the DMP-ID
Added a helper script that will recreate the OpenSearch index based on the current versions of every DMP-ID
Added a new Lambda Layer
Added a new lambda layer to support Lambdas built in the new separate folder structures. It's sam_buil_deploy.rb will kick off the build and deploy of all related Lambdas
DataCite Harvester
Added a HarvestableDmps Lambda (in it's own directory so it can be managed independently via AWS SAM) that sits inside the VPC that queries OpenSearch to find DMPs that should have research outputs appearing in the various harvester targets (e.g. DataCite, COKI, etc.). This lambda is scheduled to run once a week. It groups the DMPs by their Org affiliation and then publishes an event for each Org
Added a VPC interface endpoint to allow the above Lambda to publish events to the EventBridge
Added a DataciteHarvester lambda (in it's own directory so it can be managed independently via AWS SAM) that handles events published by the above scheduling lambda. This lambda calls out to DataCite to search for research outputs for the specified Org (e.g. UC Berkeley, Stanford, etc.) that were published within the time frame of interest. When found it adds/updates a Dynamo doc that is adjacent to the DMP ID and stores only harvester found mods. The PK for these docs is: { PK: 'DMP#doi.org/11.11111/11111AAA', SK: 'HARVESTER_MODS'}
Updated the Uc3DmpId gem's comparator class to work with the new OpenSearch doc layout
Will open a ticket to update the getDMP endpoint so that it includes these mods so they can be used in the Pilot project
Added OpenSearch cluster to the VPC
Added a new Lambda Layer
sam_buil_deploy.rb
will kick off the build and deploy of all related LambdasDataCite Harvester
{ PK: 'DMP#doi.org/11.11111/11111AAA', SK: 'HARVESTER_MODS'}
comparator
class to work with the new OpenSearch doc layoutWill open a ticket to update the getDMP endpoint so that it includes these mods so they can be used in the Pilot project