47 lines
1.4 KiB
JSON
47 lines
1.4 KiB
JSON
|
|
{
|
||
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||
|
|
"$id": "https://skylattice.dev/schemas/discover-report.schema.json",
|
||
|
|
"title": "SkyLatticeDiscoverReport",
|
||
|
|
"type": "object",
|
||
|
|
"required": ["customer", "generated_at", "objects", "summary"],
|
||
|
|
"properties": {
|
||
|
|
"customer": { "type": "string" },
|
||
|
|
"generated_at": { "type": "string" },
|
||
|
|
"source": {
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["live", "inventory_file", "terraform_state", "merged"],
|
||
|
|
"default": "inventory_file"
|
||
|
|
},
|
||
|
|
"objects": {
|
||
|
|
"type": "array",
|
||
|
|
"items": {
|
||
|
|
"type": "object",
|
||
|
|
"required": ["kind", "name", "classification"],
|
||
|
|
"properties": {
|
||
|
|
"kind": {
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["database", "schema", "role", "warehouse", "user", "grant"]
|
||
|
|
},
|
||
|
|
"name": { "type": "string" },
|
||
|
|
"classification": {
|
||
|
|
"type": "string",
|
||
|
|
"enum": ["in_sync", "drifted_managed", "unmanaged_live", "in_state_missing_live", "blueprint_match", "conflict"]
|
||
|
|
},
|
||
|
|
"tf_address": { "type": ["string", "null"] },
|
||
|
|
"notes": { "type": "string" }
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"summary": {
|
||
|
|
"type": "object",
|
||
|
|
"properties": {
|
||
|
|
"total": { "type": "integer" },
|
||
|
|
"matched_pct": { "type": "number" },
|
||
|
|
"unmanaged": { "type": "integer" },
|
||
|
|
"conflicts": { "type": "integer" },
|
||
|
|
"drifted": { "type": "integer" }
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|