PDS Nucleus is a software platform used to create workflows for managing data archives.
Please visit the documentation at: https://nasa-pds.github.io/doi-service/
- Python 3.9 or above
- Access to Planetary Data Cloud
TBD
See in this repository:
https://github.com/NASA-PDS/nucleus/tree/main/terraform
Documentation about the documentation is described in this section.
See in this repository:
https://github.com/NASA-PDS/nucleus/tree/main/docs
or the docs
directory in the source package.
User documentation is managed with Sphinx, which is also installed in your Python virtual environment when you run pip install --editable .[dev]
:
python3 -m venv venv
source venv/bin/activate
pip install -e '.[dev]'
sphinx-build -b html docs/source docs/build/html
Publish the pages on gh-pages branch
The following commands can be used to detect secrets in the code.
- Setup a pythion virtual environment.
mkdir ~/Tools
python3 -m venv ~/Tools/detect-secrets
source ~/Tools/detect-secrets/bin/activate
pip install git+https://github.com/NASA-AMMOS/slim-detect-secrets.git@exp
- Execute the following command in Nucleus root directory to scan the code for secrets.
detect-secrets scan --disable-plugin AbsolutePathDetectorExperimental \
--exclude-files '\.secrets\..*' \
--exclude-files '\.git.*' \
--exclude-files '\.pre-commit-config\.yaml' \
--exclude-files '\.mypy_cache' \
--exclude-files '\.pytest_cache' \
--exclude-files '\.tox' \
--exclude-files '\.venv' \
--exclude-files 'venv' \
--exclude-files 'dist' \
--exclude-files 'build' \
--exclude-files '.*\.egg-info' \
--exclude-files '.*\.tfstate' \
--exclude-files '.*\.tfvars' \
> .secrets.baseline
- Execute the following command in Nucleus root directory to audit the possible secrets detected.
detect-secrets audit .secrets.baseline
This will create a .secrets.baseline
in Nucleus root directory. Commit and push that file, in order to pass the checks in GitHub during a pull request.