Skip to main content
Version: v0.36.0

playbook.v1alpha1.Playbook

Title: playbook.v1alpha1.Playbook

Typeobject
Additional propertiesNot allowed

Description: Schema for regis Playbook resources (Kubernetes-style envelope).

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ apiVersionNoconstNo-API group and version. Must equal 'regis.io/v1alpha1'.
+ kindNoconstNo-Resource kind. Must equal 'Playbook'.
+ metadataNoobjectNo--
+ specNoobjectNo-Playbook body: rules, tiers, badges, presentation, links.

1. Required Property apiVersion

Typeconst

Description: API group and version. Must equal 'regis.io/v1alpha1'.

Specific value: "regis.io/v1alpha1"

2. Required Property kind

Typeconst

Description: Resource kind. Must equal 'Playbook'.

Specific value: "Playbook"

3. Required Property metadata

Typeobject
Additional propertiesNot allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNo-Machine identifier (RFC 1123 DNS label): lowercase alphanumerics and '-'.
- titleNostringNo-Human-readable display name.
- descriptionNostringNo-Human-readable description of what this playbook evaluates.
+ labelsNoobjectNo--
- annotationsNoobjectNo-Free-form non-identifying metadata.

3.1. Required Property name

Typestring

Description: Machine identifier (RFC 1123 DNS label): lowercase alphanumerics and '-'.

Restrictions
Max length63
Must match regular expression^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ Test

3.2. Optional Property title

Typestring

Description: Human-readable display name.

3.3. Optional Property description

Typestring

Description: Human-readable description of what this playbook evaluates.

3.4. Required Property labels

Typeobject
Additional propertiesShould-conform
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ app.kubernetes.io/versionNostringNo-SemVer of the playbook bundle (e.g. "1.2.3").
- NostringNo--

3.4.1. Required Property app.kubernetes.io/version

Typestring

Description: SemVer of the playbook bundle (e.g. "1.2.3").

Restrictions
Must match regular expression^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$ Test

3.4.2. Property additionalProperties

Typestring

3.5. Optional Property annotations

Typeobject
Additional propertiesShould-conform

Description: Free-form non-identifying metadata.

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- NostringNo--

3.5.1. Property additionalProperties

Typestring

4. Required Property spec

Typeobject
Additional propertiesNot allowed

Description: Playbook body: rules, tiers, badges, presentation, links.

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- linksNoarray of objectNo-Optional custom links to display as actions for this playbook.
- presentationNoobjectNo-Platform-neutral presentation directives surfaced to downstream integrations (labels, checklists, templates).
- rulesNoarray of objectNo-Custom rule overrides or template instantiations.
- tiersNoarray of objectNo-Compliance tier thresholds. Each tier is awarded when its JsonLogic condition evaluates to true, evaluated in order.
- badgesNoarray of objectNo-Dynamic status badges displayed in the report header. Each badge is conditionally rendered based on a JsonLogic expression.
Typearray of object

Description: Optional custom links to display as actions for this playbook.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
links items-
Typeobject
Additional propertiesAny type: allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ labelNostringNo-Display label for the link.
+ urlNostringNo-URL template which can use {metadata[key]} placeholders or Jinja2 syntax.
- conditionNoobject, array, string, number, boolean or nullNoIn ../jsonlogic.schema.jsonjsonlogic
4.1.1.1. Property label
Typestring

Description: Display label for the link.

4.1.1.2. Property url
Typestring

Description: URL template which can use {metadata[key]} placeholders or Jinja2 syntax.

4.1.1.3. Property condition

Title: jsonlogic

Typeobject, array, string, number, boolean or null
Defined in../jsonlogic.schema.json

Description: Optional JsonLogic expression to determine if the link should be displayed.

4.2. Optional Property presentation

Typeobject
Additional propertiesNot allowed

Description: Platform-neutral presentation directives surfaced to downstream integrations (labels, checklists, templates).

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- badgesNoarray of stringNo-Badge slugs to surface as labels for consuming integrations.
- checklistsNoarray of objectNo-Conditional checklists surfaced by integrations (e.g. in an MR/PR description).
- templatesNoarray of objectNo-Conditional Cookiecutter templates surfaced to integrations.

4.2.1. Optional Property badges

Typearray of string

Description: Badge slugs to surface as labels for consuming integrations.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
badges items-
4.2.1.1. badges items
Typestring

4.2.2. Optional Property checklists

Typearray of object

Description: Conditional checklists surfaced by integrations (e.g. in an MR/PR description).

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
checklists items-
4.2.2.1. checklists items
Typeobject
Additional propertiesAny type: allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
- titleNostringNo-Display title for the checklist.
+ itemsNoarrayNo-Items in this checklist.
4.2.2.1.1. Property title
Typestring

Description: Display title for the checklist.

4.2.2.1.2. Property items
Typearray

Description: Items in this checklist.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
checklist_item-
4.2.2.1.2.1. checklist_item
Typeobject
Additional propertiesNot allowed
Defined in#/$defs/checklist_item
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ labelNostringNo-Text of the checkbox item.
- show_ifNoobjectNo-Optional JsonLogic expression. If provided, the item is only included when the expression evaluates to truthy.
- check_ifNoobjectNo-Optional JsonLogic expression. If provided and evaluates to truthy, the checkbox renders pre-checked (- [x]). Otherwise it renders unchecked (- [ ]).
4.2.2.1.2.1.1. Property label
Typestring

Description: Text of the checkbox item.

4.2.2.1.2.1.2. Property show_if
Typeobject
Additional propertiesAny type: allowed

Description: Optional JsonLogic expression. If provided, the item is only included when the expression evaluates to truthy.

4.2.2.1.2.1.3. Property check_if
Typeobject
Additional propertiesAny type: allowed

Description: Optional JsonLogic expression. If provided and evaluates to truthy, the checkbox renders pre-checked (- [x]). Otherwise it renders unchecked (- [ ]).

4.2.3. Optional Property templates

Typearray of object

Description: Conditional Cookiecutter templates surfaced to integrations.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
templates items-
4.2.3.1. templates items
Typecombining
Additional propertiesNot allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
- urlNostringNo-Cookiecutter template URL or local path (a git URL is cloned).
- packageNostringNo-Installed Python package shipping the template (e.g. 'regis'); resolved to a local path with 'directory', so no clone is performed.
- directoryNostringNo-Subdirectory containing the template (relative to the repo for 'url', or to the package root for 'package').
- conditionNoobject, array, string, number, boolean or nullNoSame as conditionjsonlogic
Any of(Option)
item 0
item 1
4.2.3.1.1. Property item 0
Typeobject
Additional propertiesAny type: allowed
4.2.3.1.1.1. The following properties are required
  • url
4.2.3.1.2. Property item 1
Typeobject
Additional propertiesAny type: allowed
4.2.3.1.2.1. The following properties are required
  • package
4.2.3.1.3. Property url
Typestring

Description: Cookiecutter template URL or local path (a git URL is cloned).

4.2.3.1.4. Property package
Typestring

Description: Installed Python package shipping the template (e.g. 'regis'); resolved to a local path with 'directory', so no clone is performed.

4.2.3.1.5. Property directory
Typestring

Description: Subdirectory containing the template (relative to the repo for 'url', or to the package root for 'package').

4.2.3.1.6. Property condition

Title: jsonlogic

Typeobject, array, string, number, boolean or null
Same definition ascondition

Description: JSON Logic expression to conditionally surface the template.

4.3. Optional Property rules

Typearray of object

Description: Custom rule overrides or template instantiations.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
rules items-

4.3.1. rules items

Typeobject
Additional propertiesNot allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
- slugNostringNo-Unique identifier for the rule instance.
- providerNostringNo-Analyzer name (e.g. 'cve').
- criterionNostringNo-Criterion template name within the provider (e.g. 'cve-max').
- ruleNostringNo-(Deprecated) Alias of 'criterion'. Template name within the provider (e.g. 'cve-max').
- optionsNoobjectNo-Configuration parameters for the rule template.
- enableNobooleanNo-Whether to enable this rule.
- levelNoenum (of string)No-Severity level of the rule.
- tagsNoarray of stringNo-Arbitrary tags.
- messagesNoobjectNo--
4.3.1.1. Property slug
Typestring

Description: Unique identifier for the rule instance.

4.3.1.2. Property provider
Typestring

Description: Analyzer name (e.g. 'cve').

4.3.1.3. Property criterion
Typestring

Description: Criterion template name within the provider (e.g. 'cve-max').

4.3.1.4. Property rule
Typestring

Description: (Deprecated) Alias of 'criterion'. Template name within the provider (e.g. 'cve-max').

4.3.1.5. Property options
Typeobject
Additional propertiesAny type: allowed

Description: Configuration parameters for the rule template.

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- NoobjectNo--
4.3.1.6. Property enable
Typeboolean
Defaulttrue

Description: Whether to enable this rule.

4.3.1.7. Property level
Typeenum (of string)

Description: Severity level of the rule.

Must be one of:

  • "info"
  • "warning"
  • "critical"
  • "none"
4.3.1.8. Property tags
Typearray of string

Description: Arbitrary tags.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
tags items-
4.3.1.8.1. tags items
Typestring
4.3.1.9. Property messages
Typeobject
Additional propertiesAny type: allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
- passNostringNo--
- failNostringNo--
4.3.1.9.1. Property pass
Typestring
4.3.1.9.2. Property fail
Typestring

4.4. Optional Property tiers

Typearray of object

Description: Compliance tier thresholds. Each tier is awarded when its JsonLogic condition evaluates to true, evaluated in order.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
tiers items-

4.4.1. tiers items

Typeobject
Additional propertiesNot allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNo-Tier name (e.g. Gold, Silver, Bronze).
- iconNostringNo-Optional display icon (emoji) for the tier.
+ conditionNoobject, array, string, number, boolean or nullNoSame as conditionjsonlogic
4.4.1.1. Property name
Typestring

Description: Tier name (e.g. Gold, Silver, Bronze).

4.4.1.2. Property icon
Typestring

Description: Optional display icon (emoji) for the tier.

4.4.1.3. Property condition

Title: jsonlogic

Typeobject, array, string, number, boolean or null
Same definition ascondition

Description: JsonLogic expression evaluated against the report context.

4.5. Optional Property badges

Typearray of object

Description: Dynamic status badges displayed in the report header. Each badge is conditionally rendered based on a JsonLogic expression.

Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
badges items-

4.5.1. badges items

Typeobject
Additional propertiesNot allowed
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ slugNostringNo-Unique identifier for the badge.
+ scopeNostringNo-Category label displayed on the left part of the badge (e.g. CVE, Freshness).
+ valueNostringNo-Value displayed on the right part of the badge.
+ conditionNoobject, array, string, number, boolean or nullNoSame as conditionjsonlogic
+ classNoenum (of string)No-Visual style class for the badge.
4.5.1.1. Property slug
Typestring

Description: Unique identifier for the badge.

4.5.1.2. Property scope
Typestring

Description: Category label displayed on the left part of the badge (e.g. CVE, Freshness).

4.5.1.3. Property value
Typestring

Description: Value displayed on the right part of the badge.

4.5.1.4. Property condition

Title: jsonlogic

Typeobject, array, string, number, boolean or null
Same definition ascondition

Description: JsonLogic expression. The badge is shown when this evaluates to truthy.

4.5.1.5. Property class
Typeenum (of string)

Description: Visual style class for the badge.

Must be one of:

  • "success"
  • "warning"
  • "error"
  • "information"

Generated using json-schema-for-humans on 2026-06-09 at 12:22:16 +0000

  • 1. Required Property apiVersion
  • 2. Required Property kind
  • 3. Required Property metadata
    • 3.1. Required Property name
    • 3.2. Optional Property title
    • 3.3. Optional Property description
    • 3.4. Required Property labels
    • 3.5. Optional Property annotations
  • 4. Required Property spec
    • 4.1. Optional Property links
    • 4.2. Optional Property presentation
    • 4.3. Optional Property rules
    • 4.4. Optional Property tiers
    • 4.5. Optional Property badges