posh-providers/azure/az/config.schema.json
2025-08-07 16:44:27 +02:00

124 lines
2.8 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/foomo/posh-providers/azure/az/config",
"$ref": "#/$defs/Config",
"$defs": {
"Artifactory": {
"properties": {
"name": {
"type": "string"
},
"resourceGroup": {
"type": "string"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"name",
"resourceGroup"
]
},
"Cluster": {
"properties": {
"name": {
"type": "string",
"description": "Cluster"
},
"resourceGroup": {
"type": "string",
"description": "Cluster resource group name"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"name",
"resourceGroup"
]
},
"Config": {
"properties": {
"configPath": {
"type": "string",
"description": "Config path"
},
"tenantId": {
"type": "string",
"description": "Tenant id"
},
"subscriptions": {
"additionalProperties": {
"$ref": "#/$defs/Subscription"
},
"type": "object",
"description": "Subscription configurations"
},
"servicePrincipals": {
"additionalProperties": {
"$ref": "#/$defs/ServicePrincipal"
},
"type": "object",
"description": "Authentication service principals"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"configPath",
"tenantId",
"subscriptions",
"servicePrincipals"
]
},
"ServicePrincipal": {
"properties": {
"tenantId": {
"type": "string",
"description": "Tenant id"
},
"clientId": {
"type": "string",
"description": "Application client id"
},
"clientSecret": {
"type": "string",
"description": "Application password"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"tenantId",
"clientId",
"clientSecret"
]
},
"Subscription": {
"properties": {
"name": {
"type": "string"
},
"clusters": {
"additionalProperties": {
"$ref": "#/$defs/Cluster"
},
"type": "object"
},
"artifactories": {
"additionalProperties": {
"$ref": "#/$defs/Artifactory"
},
"type": "object"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"name",
"clusters",
"artifactories"
]
}
}
}