Skip to main content

Planetary Data Service Data Delivery Manager

Project description

PDS Data Upload Manager

The PDS Data Upload Manager provides the client application and server interface for managing data deliveries and retrievals from the Data Providers to and from the Planetary Data Cloud.

Prerequisites

The PDS Data Delivery Manager has the following prerequisties:

  • python3 for running the client application and unit tests
  • awscli (optional) for deploying the service components to AWS (TBD)

User Quickstart

Install with:

pip install pds-data-upload-manager

To deploy the service components to an AWS environment:

TBD

To execute the client, run:

pds-ingress-client.py <ingress path> [<ingress_path> ...]

Code of Conduct

All users and developers of the NASA-PDS software are expected to abide by our Code of Conduct. Please read this to ensure you understand the expectations of our community.

Development

To develop this project, use your favorite text editor, or an integrated development environment with Python support, such as PyCharm.

Contributing

For information on how to contribute to NASA-PDS codebases please take a look at our Contributing guidelines.

Installation

Install in editable mode and with extra developer dependencies into your virtual environment of choice:

pip install --editable '.[dev]'

Configure the pre-commit hooks:

pre-commit install && pre-commit install -t pre-push

Packaging

To isolate and be able to re-produce the environment for this package, you should use a Python Virtual Environment. To do so, run:

python -m venv venv

Then exclusively use venv/bin/python, venv/bin/pip, etc. (It is no longer recommended to use venv/bin/activate.)

If you have tox installed and would like it to create your environment and install dependencies for you run:

tox --devenv <name you'd like for env> -e dev

Dependencies for development are specified as the dev extras_require in setup.cfg; they are installed into the virtual environment as follows:

pip install --editable '.[dev]'

Tooling

The dev extras_require included in this repo installs black, flake8 (plus some plugins), and mypy along with default configuration for all of them. You can run all of these (and more!) with:

tox -e lint

Tests

A complete "build" including test execution, linting (mypy, black, flake8, etc.), and documentation build is executed via:

tox

Unit tests

Our unit tests are launched with command:

pytest

Documentation

You can build this projects' docs with:

sphinx-build docs/source docs/build

You can access the build files in the following directory relative to the project root:

build/sphinx/html/

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pds_data_upload_manager-1.0.0-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file pds_data_upload_manager-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pds_data_upload_manager-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/7.0.1 pkginfo/1.9.6 requests/2.23.0 requests-toolbelt/1.0.0 tqdm/4.66.1 CPython/3.9.16

File hashes

Hashes for pds_data_upload_manager-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9d761bdf5dc4c1cf79876af2618ace293ee405101b792e943a8f8d0624975711
MD5 382e4a686f604eaf0220200b4be60445
BLAKE2b-256 7a4ba49a08329d396d6892c10a4c68fb6ec98c2ab9f2af8aaaaac8c114012f2b

See more details on using hashes here.

Supported by

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