csppfetch
csppfetch is a Python 3 module for downloading dynamic ancillary data. It can:
- Maintain a local cache of ancillary data
- Download the specific ancillary data files needed to process a given time step
- Using the local cache if available
- Optionally updating the local cache
Final files in the cache are atomically created; from the perspective of other programs a given ancillary data file either completely exists or doesn't exist at all.
Multiple copies of this module can safely run at the same time; locks are used
to ensure they don't interfere with each other. (Your operating system and
filesystem will need to correctly implement lockf
.)
If a file is already present in the local cache, this module will NOT replace them; their existence is assumed to mean they are correct. To force a re-download, delete the existing file.
csppfetch implements the CSPP Geo ancillary download behavior guidelines.
Requires Python 3.6 or later.