This tutorial provides how to use trestlebot sync-oscal-content
sync OSCAL models to CaC content.
Currently, this command has one sub-command: cac-control
This command is to sync OSCAL Component Definition files to CaC content profile file and control files.
The CLI performs the following sync:
- Sync OSCAL component definition parameters/rules changes to CaC content profile file
- Sync OSCAL component definition parameters/rules changes to CaC content control file
- Add a hint comment to the control file when a missing rule is found in the CaC content repo.
- Sync OSCAL component definition control status changes to CaC content control file. Since status mapping between cac and OSCAL is many-to-many relationship, if status can not be determined when sync, then add a comment to let user decide. Discussion detail in doc
- Add new option to cac var file when found variable exists but missing the option we sync.
-
Initialize the trestlebot workspace.
-
Pull the CaC Content repository.
-
Has an OSCAL Component Definition file, (transformed from CaC content using
sync-cac-content component-definition
cmd)
poetry run trestlebot sync-oscal-content cac-control \
--branch main \
--cac-content-root $cac-content-dir \
--committer-name test \
--committer-email [email protected] \
--dry-run \
--repo-path $trestlebot-workspace-dir \
--product $product-name
For more details about these options and additional flags, you can use the --help flag: `poetry run trestlebot sync-oscal-content cac-control --help' This will display a full list of available options and their descriptions.