Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
},
"scale": {
"$ref": "#/definitions/ScaleSettings"
}
,
},
"deployments": {
"type": "array",
"description": "List of model deployments.",
Expand Down Expand Up @@ -54,8 +53,7 @@
}
},
"additionalProperties": false
}
,
},
"Deployment": {
"type": "object",
"description": "A single model deployment.",
Expand Down
136 changes: 41 additions & 95 deletions schemas/alpha/azure.yaml.json
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,8 @@
"springapp",
"staticwebapp",
"aks",
"ai.endpoint"
"ai.endpoint",
"azure.ai.agent"
]
},
"language": {
Expand Down Expand Up @@ -306,156 +307,101 @@
},
"allOf": [
{
"comment": "ContainerApp host - supports image OR project, docker config, and apiVersion",
"if": {
"properties": {
"host": {
"const": "containerapp"
}
"host": { "const": "containerapp" }
}
},
"then": {
"anyOf": [
{
"required": [
"image"
],
"not": {
"required": [
"project"
]
}
"required": ["image"],
"not": { "required": ["project"] }
},
{
"required": [
"project"
],
"not": {
"required": [
"image"
]
}
}
]
}
},
{
"if": {
"not": {
"properties": {
"host": {
"const": "containerapp"
}
"required": ["project"],
"not": { "required": ["image"] }
}
}
},
"then": {
],
"properties": {
"image": false
"k8s": false
}
}
},
{
"comment": "AKS host - requires project, supports docker and k8s config",
"if": {
"not": {
"properties": {
"host": {
"enum": [
"containerapp",
"aks",
"ai.endpoint"
]
}
}
"properties": {
"host": { "const": "aks" }
}
},
"then": {
"required": [
"project"
],
"required": ["project"],
"properties": {
"docker": false
"image": false,
"apiVersion": false
}
}
},
{
"comment": "AI Endpoint host - requires project and config, supports docker",
"if": {
"properties": {
"host": {
"const": "ai.endpoint"
}
"host": { "const": "ai.endpoint" }
}
},
"then": {
"required": [
"config"
],
"required": ["project", "config"],
"properties": {
"config": {
"$ref": "#/definitions/aiEndpointConfig",
"title": "The Azure AI endpoint configuration.",
"description": "Required. Provides additional configuration for Azure AI online endpoint deployment."
}
}
}
},
{
"if": {
"not": {
"properties": {
"host": {
"enum": [
"aks"
]
}
}
}
},
"then": {
"properties": {
"k8s": false
},
"image": false,
"k8s": false,
"apiVersion": false
}
}
},
{
"comment": "Azure AI Agent host - requires project, supports docker and config",
"if": {
"properties": {
"language": {
"const": "java"
}
"host": { "const": "azure.ai.agent" }
}
},
"then": {
"required": ["project"],
"properties": {
"dist": {
"type": "string",
"description": "Optional. The path to the directory containing a single Java archive file (.jar/.ear/.war), or the path to the specific Java archive file to be included in the deployment artifact. If omitted, the CLI will detect the output directory based on the build system in-use. For maven, the default output directory 'target' is assumed."
}
"config": {
"$ref": "https://raw.githubusercontent.com/Azure/azure-dev/refs/heads/main/cli/azd/extensions/azure.ai.agents/schemas/azure.ai.agent.json",
"title": "The Azure AI Agent configuration.",
"description": "Optional. Provides additional configuration for Azure AI Agent deployment."
},
"image": false,
"k8s": false,
"apiVersion": false
}
}
},
{
"comment": "Traditional hosts - require project only, disable container-specific properties",
"if": {
"not": {
"properties": {
"host": {
"const": "containerapp"
}
}
"properties": {
"host": { "enum": ["appservice", "function", "springapp", "staticwebapp"] }
}
},
"then": {
"required": ["project"],
"properties": {
"image": false,
"docker": false,
"k8s": false,
"apiVersion": false
}
}
},
{
"properties": {
"dist": {
"type": "string",
"description": "Optional. The CLI will use files under this path to create the deployment artifact (ZIP file). If omitted, all files under service project directory will be included."
}
}
}
]
}
Expand Down
Loading
Loading