Skip to content

NASA-IMPACT/hls-lpdaac-reconciliation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HLS LPDAAC Reconciliation

HLS LPDAAC Reconciliation is an AWS CloudFormation stack deployed via the AWS CDK to the HLS account in MCP. As such, deployment occurs only via GitHub Workflows.

For local development work, you must have tox installed (ideally version 4+, but at a minimum, 3.18).

If you want to be able to resolve dependency package references in a REPL or an IDE, run the following command to create a development virtual environment in the directory venv:

make venv

You may then select this virtual environment within your IDE in order to resolve references, or run the following to resolve references within a REPL:

source venv/bin/activate

To run unit tests, run the following, which will create a separate virtual environment in the directory .venv (notice the leading dot [.]), so it will not affect the virtual environment for your IDE:

make unit-tests

To run integration tests, you must have active AWS credentials. To obtain AWS short-term access keys:

  • Connect to the NASA VPN.
  • Login to NASA's MCP portal.
  • From the IMPACT-HLS project, generate short-term access keys (either set environment variables or add an AWS profile, whichever you prefer).
  • Set the environment variable HLS_STACK_NAME to a unique value (such as your username), which will be used as a prefix for the integration tests stack.

At this point, you may disconnect from the NASA VPN and run the following to deploy your own integration tests stack:

make deploy-it

To run integration tests, use the following command, which will use your deployed integration tests stack:

make integration-tests

Redeploy your integration tests stack as many times as necessary while developing and running integration tests.

When you're finished, cleanup your integration tests stack with the following command:

make destroy-it