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 testsawscli
(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
Built Distribution
Hashes for pds_data_upload_manager-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cd4ab08790a15e8e8bc7f68b277cd84bd6ccb3854f7cd659abdf3cdaaaae2e8 |
|
MD5 | 5f9a16feccd5924a20aee3240d9c4a63 |
|
BLAKE2b-256 | 6b8d9326f8b54470828524cf537f20f6fce0e09561111b3fd06cd7023f60ca1f |