[ARM] az deployment: Fix the problem that the templateLink will not be returned when deploying or validating template-uri (#13317) #13344
+559
−167
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue: #13317 #12890 #12990
Description
This problem is caused by the simultaneous values of the
templateandtemplate_linkparameters in theDeploymentPropertieswhen handling--handle-extended-json-format:The service API returns templateLink only if the request parameter is templateLink.
When both
template_linkandtemplatehave values inDeploymentProperties, the Python SDK will take the data oftemplateas the main data, and the request body for service API are:Therefore, the service API does not return templateLink.
And When there is only
templatelinkinDeploymentProperties,the request body for service API are:In this case, the service API will return templateLink
By the way, if the request parameter in
DeploymentPropertiesis onlytemplateLink, there is no need to change the configuration of the deployment_client that sent the parameter as JSON template, otherwise the service API will report an error.Testing Guide
When deploying or validating the ARM template, please use the
--template-uriparameter to see if tempalteLink will be returned.History Notes
[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.
This checklist is used to make sure that common guidelines for a pull request are followed.
The PR title and description has followed the guideline in Submitting Pull Requests.
I adhere to the Command Guidelines.