A tool to automate a System Security Plan. One intended use case: load an OSCAL style YAML file and render a Golang template to produce the markdown for SSP front matter.
GoSSPTK
requires at least one YAML file in the keys directory containing the key:value pairs to be used with the templates. For example:
project:
name: The Project
name_short: Project
contact_email: TheProject@example.net
The YAML should have a unique top-level name, project
in the example above. The variables will be available to your template using {{.[TOP-LEVEL].[KEY]}}
. Using the example above to render the project name you would use {{.project.name}}
.
The directory containing the files can live wherever you like, and can have as many YAMl key files as you like.
Define the directory containing your keys as the value keyDir in the config.yaml
file.
Templates use the Golang text/template package. The files must have a .tpl
extension and live in the templateDir defined in the config.yaml
file. The templates variables use the "dot" notation and are surrounded by {{ }}
.
# Project {{.project.name}}
{{.project.name_short}} is a project that does {{.Keys.project.description}}
The variables will be replaced with values from the keys YAML files.
RenderAll... more info to follow.
- Tom Camp - Tom-Camp
- Oh, so much!