Python project to archive and update operational datasets for the NSF NCAR Geoscience Data Exchange (GDEX).
The user guide for this utility tool can be viewed at: User guide.
The package installs the following command-line utility, running as the current user:
dsupdt— archive and update RDA operational datasets
Run with --help (or -h) for full usage details.
Create a Python environment first; package installs in the next section run inside whichever environment you activate here.
python3 -m venv $ENVHOME # e.g. /glade/u/home/gdexdata/gdexmsenv
source $ENVHOME/bin/activateconda create --prefix $ENVHOME python=3.12 # e.g. /glade/work/gdexdata/conda-envs/pg-gdex
conda activate $ENVHOMEPick whichever install mode fits your workflow. All variants pull in the
transitive dependencies (rda_python_common, rda_python_dsarch)
automatically.
For local development, clone this repo alongside your project and install it in editable mode so that changes are picked up without re-installing:
git clone https://github.com/NCAR/rda-python-dsupdt.git
cd rda-python-dsupdt
pip install -e .To test a specific branch (e.g. an in-progress feature or fix branch), pass
-b/--branch to git clone:
git clone -b <branch-name> https://github.com/NCAR/rda-python-dsupdt.git
cd rda-python-dsupdt
pip install -e .For a regular (non-editable) install from a checkout:
pip install /path/to/rda-python-dsupdtFor a production install on a system that uses the published distribution:
pip install rda_python_dsupdtThe user guide at
gdex-docs-dsupdt.readthedocs.io is
generated from src/rda_python_dsupdt/dsupdt.usg. Keep all user-facing content
in dsupdt.usg — no manual RST editing is required.
When a pull request modifying dsupdt.usg is opened, an automated workflow
converts it into RST source files and the version number from this repository's
pyproject.toml into the
gdex-docs-dsupdt repository, then
opens a pull request from automated-update-branch against its main branch for
review.
To publish to Read the Docs:
- Merge that pull request into
mainto serve the content as thelatestversion. - Create a GitHub release in
gdex-docs-dsupdtto serve the latest release as thestableversion.