# 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](https://github.com/NASA-PDS/.github/blob/main/CODE_OF_CONDUCT.md). 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](https://www.jetbrains.com/pycharm/).
### Contributing
For information on how to contribute to NASA-PDS codebases please take a look at our [Contributing guidelines](https://github.com/NASA-PDS/.github/blob/main/CONTRIBUTING.md).
### 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](https://docs.python.org/3/tutorial/venv.html). 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/
Raw data
{
"_id": null,
"home_page": "https://github.com/NASA-PDS/data-upload-manager",
"name": "pds-data-upload-manager",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "pds, planetary data, aws, s3, ingress, data upload",
"author": "PDS",
"author_email": "pds_operator@jpl.nasa.gov",
"download_url": "https://github.com/NASA-PDS/data-upload-manager/releases/",
"platform": null,
"description": "# PDS Data Upload Manager\n\nThe 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.\n\n## Prerequisites\n\nThe PDS Data Delivery Manager has the following prerequisties:\n\n- `python3` for running the client application and unit tests\n- `awscli` (optional) for deploying the service components to AWS (TBD)\n\n## User Quickstart\n\nInstall with:\n\n pip install pds-data-upload-manager\n\nTo deploy the service components to an AWS environment:\n\n TBD\n\nTo execute the client, run:\n\n pds-ingress-client.py <ingress path> [<ingress_path> ...]\n\n## Code of Conduct\n\nAll users and developers of the NASA-PDS software are expected to abide by our [Code of Conduct](https://github.com/NASA-PDS/.github/blob/main/CODE_OF_CONDUCT.md). Please read this to ensure you understand the expectations of our community.\n\n## Development\n\nTo develop this project, use your favorite text editor, or an integrated development environment with Python support, such as [PyCharm](https://www.jetbrains.com/pycharm/).\n\n### Contributing\n\nFor information on how to contribute to NASA-PDS codebases please take a look at our [Contributing guidelines](https://github.com/NASA-PDS/.github/blob/main/CONTRIBUTING.md).\n\n### Installation\n\nInstall in editable mode and with extra developer dependencies into your virtual environment of choice:\n\n pip install --editable '.[dev]'\n\nConfigure the `pre-commit` hooks:\n\n pre-commit install && pre-commit install -t pre-push\n\n### Packaging\n\nTo isolate and be able to re-produce the environment for this package, you should use a [Python Virtual Environment](https://docs.python.org/3/tutorial/venv.html). To do so, run:\n\n python -m venv venv\n\nThen exclusively use `venv/bin/python`, `venv/bin/pip`, etc. (It is no longer recommended to use `venv/bin/activate`.)\n\nIf you have `tox` installed and would like it to create your environment and install dependencies for you run:\n\n tox --devenv <name you'd like for env> -e dev\n\nDependencies for development are specified as the `dev` `extras_require` in `setup.cfg`; they are installed into the virtual environment as follows:\n\n pip install --editable '.[dev]'\n\n### Tooling\n\nThe `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:\n\n tox -e lint\n\n### Tests\n\nA complete \"build\" including test execution, linting (`mypy`, `black`, `flake8`, etc.), and documentation build is executed via:\n\n tox\n\n#### Unit tests\n\nOur unit tests are launched with command:\n\n pytest\n\n### Documentation\n\nYou can build this projects' docs with:\n\n sphinx-build docs/source docs/build\n\nYou can access the build files in the following directory relative to the project root:\n\n build/sphinx/html/\n",
"bugtrack_url": null,
"license": "apache-2.0",
"summary": "Planetary Data Service Data Delivery Manager",
"version": "2.0.0",
"project_urls": {
"Download": "https://github.com/NASA-PDS/data-upload-manager/releases/",
"Homepage": "https://github.com/NASA-PDS/data-upload-manager"
},
"split_keywords": [
"pds",
" planetary data",
" aws",
" s3",
" ingress",
" data upload"
],
"urls": [
{
"comment_text": "\ud83e\udd20 Yee-haw! This here ar-tee-fact got done uploaded by the Roundup!",
"digests": {
"blake2b_256": "90f0457d6d889265b1b3945292697cbce9f0e5e3fd09c2c79bcdaf45b4fdb54b",
"md5": "f1a708b7e05c6a20b85caa90104fca83",
"sha256": "4c3c2d7e68e354931554ffd4566d2529e4ad1fcaa232a8fe86caabcfd8af032c"
},
"downloads": -1,
"filename": "pds_data_upload_manager-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f1a708b7e05c6a20b85caa90104fca83",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 36036,
"upload_time": "2024-08-29T22:48:24",
"upload_time_iso_8601": "2024-08-29T22:48:24.771835Z",
"url": "https://files.pythonhosted.org/packages/90/f0/457d6d889265b1b3945292697cbce9f0e5e3fd09c2c79bcdaf45b4fdb54b/pds_data_upload_manager-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-29 22:48:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "NASA-PDS",
"github_project": "data-upload-manager",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "pds-data-upload-manager"
}