feat: add deployment profile generation slice
This commit is contained in:
75
schemas/reporting-governance/deployment-profile.schema.json
Normal file
75
schemas/reporting-governance/deployment-profile.schema.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://cowbay.org/schemas/reporting-governance/deployment-profile.schema.json",
|
||||
"title": "Reporting Governance Deployment Profile",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["apiVersion", "kind", "metadata", "spec"],
|
||||
"properties": {
|
||||
"apiVersion": {
|
||||
"type": "string",
|
||||
"const": "reporting-governance/v1alpha1"
|
||||
},
|
||||
"kind": {
|
||||
"type": "string",
|
||||
"const": "DeploymentProfile"
|
||||
},
|
||||
"metadata": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["id", "version", "runtime"],
|
||||
"properties": {
|
||||
"id": { "type": "string", "minLength": 1 },
|
||||
"title": { "type": "string", "minLength": 1 },
|
||||
"version": { "type": "string", "minLength": 1 },
|
||||
"runtime": { "type": "string", "minLength": 1 },
|
||||
"summary": { "type": "string", "minLength": 1 }
|
||||
}
|
||||
},
|
||||
"spec": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["package", "adapters", "notifications", "audit", "capability_expectations"],
|
||||
"properties": {
|
||||
"package": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["pluginVersion"],
|
||||
"properties": {
|
||||
"pluginVersion": { "type": "string", "minLength": 1 }
|
||||
}
|
||||
},
|
||||
"adapters": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["watchdog", "queue", "dispatcher", "bridge", "sender", "orchestrator"]
|
||||
},
|
||||
"notifications": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["operatorVisibleRecoveryRequired", "allowedTerminalStates"]
|
||||
},
|
||||
"audit": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["portableArtifactsRequired", "requiredArtifacts"]
|
||||
},
|
||||
"capability_expectations": {
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"required": ["required"],
|
||||
"properties": {
|
||||
"required": {
|
||||
"type": "array",
|
||||
"items": { "type": "string", "minLength": 1 }
|
||||
},
|
||||
"preferred": {
|
||||
"type": "array",
|
||||
"items": { "type": "string", "minLength": 1 }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user