Skip to content

SNS messaging and reconciliation with LPDAAC infrastructure

Notifications You must be signed in to change notification settings

NASA-IMPACT/hls-lpdaac-orchestration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HLS LPDAAC ORCHESTRATION

This resposity contains HLS LPDAAC Orchestration Python Script, Docker container and Pulumi Deployment Script to run the docker container as Fargate task on a schedule

Automated Deployment Prerequisite

Automated Deployment

  • Clone the repository and make sure you are on the correct branch
  • run npm install
  • Login to pulumi pulumi login --local
  • Select your desired aws region pulumi config set aws:region <value>
  • Deploy the stack with command pulumi up
    • Hit enter to create a new stack
    • Enter passphrase for the stack
    • Note: main deployment code is in index.ts file

Deploying in Goddard Commercial Cloud (GCC)

  • GCC does not have a default VPC, thus we have to specify a VPC from an existing id in the index.ts file (example below)

const vpc = awsx.ec2.Vpc.fromExistingIds("my-vpc", { vpcId: "vpc-40b38f25", // publicSubnetIds: [], // privateSubnetIds: [], }); const cluster = new awsx.ecs.Cluster("hls-lpdaac-orchestration",{vpc});

  • GCC also restricts users from creating roles without permissions boundaries set so we also need to update the new role command in the index.ts file (example below)

const reconciliationTaskRole = new aws.iam.Role("reconciliationTask-taskRole", { assumeRolePolicy: aws.iam.assumeRolePolicyForPrincipal({ Service: "ecs-tasks.amazonaws.com", }), permissionsBoundary: "arn:aws:iam::123456789012:policy/gcc-tenantOperatorBoundary" });

About

SNS messaging and reconciliation with LPDAAC infrastructure

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages