C2P-OPENSCAP-MANIFEST.JSON(5)
π c2p-openscap-manifest.json π
okay bestie, welcome to section 5 of the manual β this is the c2p-openscap-manifest.json page, aka the config file for the OpenSCAP plugin that complyctl uses. yes it's a long name. yes it's worth it. let's go π¦
β¨ NAME β¨
c2p-openscap-manifest.json β the configuration file for the OpenSCAP plugin used by complyctl. that's it, that's the whole vibe π
πΈ DESCRIPTION πΈ
so this file defines the metadata and the runtime configuration options for the openscap-plugin, which is a plugin meant to be used with complyctl.
it's a JSON-formatted file, and it typically lives at:
/usr/share/complyctl/plugins/c2p-openscap-manifest.json
some of the configuration options used by openscap-plugin can be overridden by using a drop-in file with the same name in /etc/complyctl/config.d/:
/etc/complyctl/config.d/c2p-openscap-manifest.json
the easiest way to create a drop-in file is copying /usr/share/complyctl/plugins/c2p-openscap-manifest.json and defining the default values. any other content can be removed to keep the drop-in file clean. peep the CONFIGURATION OPTIONS and EXAMPLES sections for more details, i gotchu π«Ά
for some specific cases, it is also possible to inform a custom configuration directory to override /etc/complyctl/config.d. for example, the following command will try to locate and read custom settings from manifest files hosted in /tmp/plugins-conf instead of /etc/complyctl/config.d:
complyctl generate --plugin-config /tmp/plugins-conf
see complyctl(1) for more details about the available options. β¨
π FILE FORMAT π
the configuration is a single JSON object with these top-level keys, no cap:
- metadata: general plugin information
- executablePath: name or path of the plugin binary
- sha256: the checksum of the binary (used for integrity checks)
- configuration: an array of runtime configuration options
π₯ FIELDS π₯
metadata
{
"id": "openscap",
"description": "My openscap plugin",
"version": "0.0.1",
"types": [ "pvp" ]
}
executablePath
path or name of the plugin binary to execute. typically just:
"executablePath": "openscap-plugin"
sha256
SHA256 checksum of the plugin binary, used for runtime verification. it's giving security check π‘οΈβ¨
configuration
a list of supported configuration parameters for the plugin.
each entry includes:
- name: the name of the parameter
- description: explanation of its purpose
- required: whether this parameter must be provided
- default (optional): the default value if not specified
π CONFIGURATION OPTIONS π
workspace (required)
directory for writing plugin artifacts. the value is inherited from complyctl and cannot be modified. hands off bestie π€
profile (required)
the OpenSCAP profile to run for assessment. the value is inherited from complyctl and cannot be modified either.
datastream (optional)
the OpenSCAP datastream to use. if not set, the plugin will try to determine it based on system information. main character energy, figuring it out itself πβοΈ
results (optional, default: results.xml)
the name of the generated results file.
arf (optional, default: arf.xml)
the name of the generated ARF file.
policy (optional, default: tailoring_policy.xml)
the name of the generated tailoring file.
π EXAMPLES π
this is an example of a manifest including all information. obsessed.
{
"metadata": {
"id": "openscap",
"description": "My openscap plugin",
"version": "0.0.1",
"types": [
"pvp"
]
},
"executablePath": "openscap-plugin",
"sha256": "17e8d0b82c9bfbe7c195505090954488175005898fc0e8da0812c112c582426c",
"configuration": [
{
"name": "workspace",
"description": "Directory for writing plugin artifacts",
"required": true
},
{
"name": "profile",
"description": "The OpenSCAP profile to run for assessment",
"required": true
},
{
"name": "datastream",
"description": "The OpenSCAP datastream to use. If not set, the plugin will try to determine it based on system information",
"required": false
},
{
"name": "policy",
"description": "The name of the generated tailoring file",
"default": "tailoring_policy.xml",
"required": false
},
{
"name": "arf",
"description": "The name of the generated ARF file",
"default": "arf.xml",
"required": false
},
{
"name": "results",
"description": "The name of the generated results file",
"default": "results.xml",
"required": false
}
]
}
and this is an example of a drop-in file modifying the openscap files. tiny file, big impact π
{
"configuration": [
{
"name": "policy",
"default": "custom_tailoring_policy.xml",
},
{
"name": "arf",
"default": "custom_arf.xml",
},
{
"name": "results",
"default": "custom_results.xml",
}
]
}
π¦ SEE ALSO π¦
complyctl(1), complyctl-openscap-plugin(7)
see the upstream project at https://github.com/complytime/complyctl for more detailed documentation. go read it, iykyk π
π AUTHORS π
Marcus Burghardt maburgha@redhat.com
and that's the whole page, bestie π₯Ή this was the complyctl OpenSCAP Plugin Configuration page, dated June 2025. mwah, periodt. πβ¨π
π¦ where this page comes from
- fedora 43: complyctl-openscap-plugin 0.0.10-1.fc43 Β· Apache-2.0
- fedora 44: complyctl-openscap-plugin 0.1.2-4.fc44 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms