Closed RayPlante closed 3 years ago
This PR brings in primarily new code that is not used in the on-line system. (Note: the commits listed above that suggest the opposite is an artifact of a git rebase operation.) I have used the off-line (command-line) tools introduced here on the datapub production on a number of datasets, resulting in a number of fixes. Recent use suggests that common usage is bug-free; although, further enhancements in the future are expected.
Given this performance, I'm skipping normal review on this PR.
This PR establishes a set of command-line tools intended for use by an administrator or curator to interact with the PDR system and functions. All tools access via a top-level script called
pdr
, and different areas of capability are accessed via sub-commands (e.g.,pdr publish
andpdr preserve
). These tools are built into a general CLI infrastructure that allows not only the introduction of new subcommands but also the ability to assemble existing capabilities into more restricted command-line scripts or otherwise differently organized scripts. The command documentation is accessed by providing the-h
or--help
option on the command line.This initial introduction of tools serve to assist with the publishing process; in particular, the tools can be used to create new submission information packages (SIPs) that fix or otherwise update previously published datasets. In particular, one can:
pdr pub prepupd
-- prepare a metadata bag based on the last published version that can be used to receive changespdr pub fix topics
-- fix the problem of research themes being untranslated from POD into NERDmpdr.pub setver
-- increment or set the version assigned to the update bagpdr pub authors
-- add, edit, or display authors attached to a dataset via its metadatapdr pub servenerd
-- export a NERDm record suitable display via the landing page servicepdr pub validate
-- validate a bag's compliance with various standards and readines for preservationpdr preserve
-- preserve the updated SIP