Skip to main content

Get Planetary Data from the Planetary Data System (PDS)

Project description

LabCas Workflow

Run workflows for Labcas

Install

locally

Preferably use a virtual environment with python 3.9

pip install -e '.[dev]'

With Dask on docker

Create certificates:

cd docker/certs
./generate-certs.sh

Build the docker image:

docker build -f docker/Dockerfile . -t labcas/workflow

Start the scheduler:

docker network create dask
docker run --network dask -p 8787:8787 -p 8786:8786 labcas/workflow scheduler

Start one worker

docker run  --network dask -p 8786:8786 labcas/workflow worker 

Start the client, same as in following section

With dask on ECS

Deploy the image created in the previous section on ECR

Have a s3 bucket labcas-infra for the terraform state.

Other pre-requisites are:

  • a VPC
  • subnets
  • a security group allowing incoming request whre the client runs, at JPL, on EC2 or Airflow, to port 8786 and port 8787
  • a task role allowing to write on CloudWatch
  • a task execution role which pull image from ECR and standard ECS task Excecution role policy "AmazonECSTaskExecutionRolePolicy"

Deploy the ECS cluster with the following terraform command:

cd terraform
terraform init
terraform apply \
    -var consortium="edrn" \
    -var venue="dev" \
    -var aws_fg_image=<uri of the docker image deployed on ECR>
    -var aws_fg_subnets=<private subnets of the AWS account> \
    -var aws_fg_vpc=<vpc of the AWS account> \
    -var aws_fg_security_groups  <security group> \
    -var ecs_task_role <arn of a task role>
    -var ecs_task_execution_role <arn of task execution role>

Run

Set you local AWS credentials to access the data

./aws-login.darwin.amd64

Start the dask cluster

Run the processing

python ./src/labcas/workflow/manager/main.py

Publish the package on pypi

pip install build
python -m build 

Apache Airflow

Test locally using https://github.com/aws/aws-mwaa-local-runner

Follow the README instructions.

cd mwaa

Launch the server

./mwaa-local-env start

See the console on http://localhost:8080, admin/test

Test the requirement.txt files

./mwaa-local-env test-requirements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

labcas_workflow-0.1.1.tar.gz (4.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

labcas_workflow-0.1.1-py3-none-any.whl (4.9 MB view details)

Uploaded Python 3

File details

Details for the file labcas_workflow-0.1.1.tar.gz.

File metadata

  • Download URL: labcas_workflow-0.1.1.tar.gz
  • Upload date:
  • Size: 4.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.7

File hashes

Hashes for labcas_workflow-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e9d3800eb598a675311ad03fa3b1c3c72e8523baa40a1d24fe3345fd1eec661e
MD5 9f08ec3c3870987f382d82e37a5540ae
BLAKE2b-256 65b86c5326c4111e74e711c3a6dadcd47ca3b1a83f4bf52f3fda194d63904c4f

See more details on using hashes here.

File details

Details for the file labcas_workflow-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for labcas_workflow-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2d6754f36c2d1cd3b53af3b35c5bea299f75478df3f18eca02d4a233c086818
MD5 e03aabe3ed6f2763221e1fc1a8e02655
BLAKE2b-256 a147eba8f87d6eb1554ac63b4a7b30983a7ac37c50ef73cfa3bf5b23ea7eb20e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page