Skip to content

Commit

Permalink
Microsof.app 2022 01 01 preview/add custom domains (#17385)
Browse files Browse the repository at this point in the history
* add support for Custom domains and certificates

* add Certificates

* Ccertificate as child resource of Managed Env.

* Support default custom domain

* PUT/DELETE certificate are not long-running

* Add Custom Domain Verification Id

* domains for all revisions and adding examples

* missing examples

* one more missing example

* Examples+missing paths

* Adding missing envelope properties

* Addressing PR comments

* Removing AKV and Free cert related properties

* Prettier and semantic validation fixes

* Fixing semantic validations and examples

* More fixes

* Addressing more PR comments

* Updating examples

* fixing type

* fixing types

* Extra properties and responses

* misplaced response

* whitespace

* fix security section

* fixing ManageEnvironment securityDefinitions

* add 204 delete response

* Removing virtual IP and IP Based option

* change modelAsString

* Addressing ARM PR comments

* Removing 404 response from example

* renaming custom hostname analysis operation

* mark certificate as tracked resource

* fix sample

* Use Certificate Id instead of Certificate name

Co-authored-by: Ruslan Yakushev 🚴 <[email protected]>
Co-authored-by: vinisoto <[email protected]>
  • Loading branch information
3 people authored Feb 4, 2022
1 parent c8f6ab8 commit e166d26
Show file tree
Hide file tree
Showing 12 changed files with 837 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,58 @@
}
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listCustomHostNameAnalysis": {
"post": {
"tags": [
"ContainerApps"
],
"summary": "Analyzes a custom hostname for a Container App",
"operationId": "ContainerApps_ListCustomHostNameAnalysis",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
},
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
},
{
"name": "containerAppName",
"in": "path",
"description": "Name of the Container App.",
"required": true,
"type": "string"
},
{
"name": "customHostname",
"in": "query",
"description": "Custom hostname.",
"type": "string"
},
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/CustomHostnameAnalysisResult"
}
},
"default": {
"description": "Common error response.",
"schema": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
}
}
},
"x-ms-examples": {
"Analyze Custom Hostname": {
"$ref": "./examples/ContainerApps_ListCustomHostNameAnalysis.json"
}
}
}
}
},
"definitions": {
Expand Down Expand Up @@ -404,6 +456,11 @@
"type": "string",
"readOnly": true
},
"customDomainVerificationId": {
"description": "Id used to verify domain name ownership",
"type": "string",
"readOnly": true
},
"configuration": {
"$ref": "#/definitions/Configuration",
"description": "Non versioned Container App configuration properties."
Expand Down Expand Up @@ -493,6 +550,16 @@
"revisionName"
]
},
"customDomains": {
"description": "custom domain bindings for Container Apps' hostnames.",
"type": "array",
"items": {
"$ref": "#/definitions/CustomDomain"
},
"x-ms-identifiers": [
"name"
]
},
"allowInsecure": {
"description": "Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically redirected to HTTPS connections",
"type": "boolean"
Expand Down Expand Up @@ -555,6 +622,124 @@
"type": "boolean"
}
}
},
"CustomDomain": {
"description": "Custom Domain of a Container App",
"type": "object",
"properties": {
"name": {
"description": "Hostname.",
"type": "string"
},
"bindingType": {
"description": "Custom Domain binding type.",
"enum": [
"Disabled",
"SniEnabled"
],
"type": "string",
"x-ms-enum": {
"name": "bindingType",
"modelAsString": true
}
},
"certificateId": {
"description": "Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.",
"type": "string"
}
}
},
"CustomHostnameAnalysisResult": {
"description": "Custom domain analysis.",
"type": "object",
"allOf": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
}
],
"properties": {
"properties": {
"description": "CustomHostnameAnalysisResult resource specific properties",
"type": "object",
"properties": {
"hostName": {
"description": "Host name that was analyzed",
"type": "string",
"readOnly": true
},
"isHostnameAlreadyVerified": {
"description": "<code>true</code> if hostname is already verified; otherwise, <code>false</code>.",
"type": "boolean",
"readOnly": true
},
"customDomainVerificationTest": {
"description": "DNS verification test result.",
"enum": [
"Passed",
"Failed",
"Skipped"
],
"type": "string",
"readOnly": true,
"x-ms-enum": {
"name": "DnsVerificationTestResult",
"modelAsString": false
}
},
"customDomainVerificationFailureInfo": {
"$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse",
"description": "Raw failure information if DNS verification fails.",
"readOnly": true
},
"hasConflictOnManagedEnvironment": {
"description": "<code>true</code> if there is a conflict on the Container App's managed environment; otherwise, <code>false</code>.",
"type": "boolean",
"readOnly": true
},
"conflictingContainerAppResourceId": {
"description": "Name of the conflicting Container App on the Managed Environment if it's within the same subscription.",
"type": "string",
"readOnly": true
},
"cNameRecords": {
"description": "CName records visible for this hostname.",
"type": "array",
"items": {
"type": "string"
}
},
"txtRecords": {
"description": "TXT records visible for this hostname.",
"type": "array",
"items": {
"type": "string"
}
},
"aRecords": {
"description": "A records visible for this hostname.",
"type": "array",
"items": {
"type": "string"
}
},
"alternateCNameRecords": {
"description": "Alternate CName records visible for this hostname.",
"type": "array",
"items": {
"type": "string"
}
},
"alternateTxtRecords": {
"description": "Alternate TXT records visible for this hostname.",
"type": "array",
"items": {
"type": "string"
}
}
},
"x-ms-client-flatten": true
}
}
}
},
"securityDefinitions": {
Expand Down
Loading

0 comments on commit e166d26

Please sign in to comment.