-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Hub Generated] Review request for Microsoft.IoTCentral to add version stable/2021-06-01 #16139
[Hub Generated] Review request for Microsoft.IoTCentral to add version stable/2021-06-01 #16139
Conversation
…tral APIs to support Managed Identities
Hi, @gansvv Thanks for your PR. I am workflow bot for review process. Here are some small tips. Any feedback about review process or workflow bot, pls contact swagger and tools team. vsswagger@microsoft.com |
[Call for Action] To better understand Azure service dev/test scenario, and support Azure service developer better on Swagger and REST API related tests in early phase, please help to fill in with this survey https://aka.ms/SurveyForEarlyPhase. It will take 5 to 10 minutes. If you already complete survey, please neglect this comment. Thanks. |
Swagger Validation Report
|
Rule | Message |
---|---|
1041 - AddedPropertyInResponse |
The new version has a new property 'identity' in response that was not found in the old version. New: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L561:7 Old: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L561:7 |
1045 - AddedOptionalProperty |
The new version has a new optional property 'identity' that was not found in the old version. New: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L561:7 Old: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L561:7 |
1045 - AddedOptionalProperty |
The new version has a new optional property 'identity' that was not found in the old version. New: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L588:7 Old: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L584:7 |
️⚠️
LintDiff: 1 Warnings warning [Detail]
- Linted configuring files (Based on source branch, openapi-validator v1.10.1 , classic-openapi-validator v1.1.10 )
- Linted configuring files (Based on target branch, openapi-validator v1.10.1 , classic-openapi-validator v1.1.10 )
Rule | Message |
---|---|
Guid used in model definition 'SystemAssignedServiceIdentity' for property 'principalId'. Usage of Guid is not recommanded. If GUIDs are absolutely required in your service, please get sign off from the Azure API review board. Location: common-types/resource-management/v3/managedidentity.json#L92 |
The following errors/warnings exist before current PR submission:
Rule | Message |
---|---|
R4037 - MissingTypeObject |
The schema 'Resource' is considered an object but without a 'type:object', please add the missing 'type:object'. Location: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L611 |
R4037 - MissingTypeObject |
The schema 'CloudError' is considered an object but without a 'type:object', please add the missing 'type:object'. Location: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L652 |
OperationId should contain the verb: 'apptemplates' in:'Apps_ListTemplates'. Consider updating the operationId Location: Microsoft.IoTCentral/stable/2021-06-01/iotcentral.json#L419 |
️️✔️
Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️
ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️
SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️
Cross-Version Breaking Changes succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️
CredScan succeeded [Detail] [Expand]
There is no credential detected.
️️✔️
[Staging] SDK Track2 Validation succeeded [Detail] [Expand]
Validation passes for SDKTrack2Validation
- The following tags are being changed in this PR
️️✔️
[Staging] PrettierCheck succeeded [Detail] [Expand]
Validation passes for PrettierCheck.
️️✔️
[Staging] SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️
[Staging] Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
Swagger Generation Artifacts
|
NewApiVersionRequired reason: |
Hi @gansvv, Your PR has some issues. Please fix the CI sequentially by following the order of
|
/azp run unifiedPipeline |
No pipelines are associated with this pull request. |
We are adding "identity" to the request/response models in order to support Managed Identity (MI) in IoT Central APIs listed in the swagger spec. The api-version of 2021-06-01 is being updated in this PR. MI is part of the feature that was planned for release in this api-version. We had S360 compliance issues that required merging the PR first, then deploying MI changes to the services in prod, and then updating swagger. Thus, this breaking change is being done intentionally and will not affect customers (no customers are using this api-version in prod via SDK). |
"description": "The managed identity for IoT Central application.", | ||
"title": "Managed Identity", | ||
"type": "object", | ||
"properties": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Lets be a bit more descriptive on these properties. These will help users who are unfamiliar with these terms better identify how to use them
E.g.
principalId
The AD principal ID. Also known as the objectId
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sure, updated!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI, ManagementIdentify can also be refer to common definition:
azure-rest-api-specs/specification/common-types/resource-management/v3/managedidentity.json
Line 49 in 0a2fe04
"ManagedServiceIdentity": { |
You don't have to define your own one
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, I've made a note. Will add this in next iteration when we support user-managed identities - we don't support that today and its present in ManagedServiceIdentityType.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
azure-rest-api-specs/specification/common-types/resource-management/v3/managedidentity.json
Line 76 in 0a2fe04
"SystemAssignedServiceIdentityType": { |
This should be the one you need.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, updated.
@@ -65,6 +73,11 @@ | |||
}, | |||
"sku": { | |||
"name": "ST2" | |||
}, | |||
"identity": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there will be three different scenarios for the response
- No "identity": {} since it was never set.
- Identity with type of SystemAssigned.
- Identity with type of None.
We should show that in the example.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there precedence or other example showing all different scenarios? I noticed enum for AppState (created/suspended) does not provide all scenarios in the examples (only created in shown in examples).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The response for these 3 examples are vastly different. That is why I think it may be a good idea to include it in our examples. Just something nit. Up to you to decide.
Adding properties to an existing resource type without a version change is a REST breaking change, so even if no customers are using the API via SDK, they could be broken if they are using it via REST. If you want to add the property without a version change, you will need to go through breaking change review. I'll add the breaking change label. If you prefer to go with a new API version, that would need to come via a new PR, since the first commit needs to be the unchanged current API version files copied to the new API version folder. |
Hi @gansvv, one or multiple breaking change(s) is detected in your PR. Please check out the breaking change(s), and provide business justification in the PR comment and @ PR assignee why you must have these change(s), and how external customer impact can be mitigated. Please ensure to follow breaking change policy to request breaking change review and approval before proceeding swagger PR review. |
Added breaking change intake: https://msazure.visualstudio.com/One/_workitems/edit/11049939 |
Remember to join the weekly azure breaking change meeting on every Monday with this PR link + the intake you did and explain to them why this isn't a breaking change. Thanks! Things are looking good! |
Azure Breaking changes team has approved this change. I have validated that no external customers use the API changes using the logs:
Almost all from iot central portal and one from Ibiza. All internal calls. |
/azp run unifiedPipeline |
No pipelines are associated with this pull request. |
…oTCentral to add version stable/2021-06-01 (#1952) Create to sync Azure/azure-rest-api-specs#16139 [ReCreate this PR](https://github.com/azure-resource-manager-schemas/compare/main...AzureSDKAutomation:sdkAuto/iotcentral?expand=1)
…Identities Updated IoT Central Management Plane .Net package to 4.0.0. This version supports Managed Identities, removes support for S1 SKU, and supports only regional locations (not geographic). Related: .NET SDK update PR: Azure/azure-sdk-for-net#24992 Swagger update PR: Azure/azure-rest-api-specs#16139
…h support for Managed Identities (#16438) * Updated IoT Central DotNet package to 4.0.0 with support for Managed Identities Updated IoT Central Management Plane .Net package to 4.0.0. This version supports Managed Identities, removes support for S1 SKU, and supports only regional locations (not geographic). Related: .NET SDK update PR: Azure/azure-sdk-for-net#24992 Swagger update PR: Azure/azure-rest-api-specs#16139 * Minor updates to tests and changelog Minor updates to tests and changelog * Updated test session records. Updated test session records. * Update ChangeLog.md * Reverting module version Reverting module version and assembly version since they are computed per PR feedback. Co-authored-by: Yunchi Wang <54880216+wyunchi-ms@users.noreply.github.com>
…n stable/2021-06-01 (Azure#16139) * [IoT-Central] Added identity request and response objects for IoT Central APIs to support Managed Identities * Updated model as string * Updated case for none * Updated ArmIdentity to ManagedIdentity * Added description and title for ManagedIdentity * Updated casing for mI type * Reset casing for MI type * Updated comments for principalId and tenantId * Use common-types for supported system-assigned managed identities Co-authored-by: Ganesh Viswanathan <gaviswan@microsoft.com>
…n stable/2021-06-01 (Azure#16139) * [IoT-Central] Added identity request and response objects for IoT Central APIs to support Managed Identities * Updated model as string * Updated case for none * Updated ArmIdentity to ManagedIdentity * Added description and title for ManagedIdentity * Updated casing for mI type * Reset casing for MI type * Updated comments for principalId and tenantId * Use common-types for supported system-assigned managed identities Co-authored-by: Ganesh Viswanathan <gaviswan@microsoft.com>
This is a PR generated at OpenAPI Hub. You can view your work branch via this link.
Changelog
Add a changelog entry for this PR by answering the following questions:
Contribution checklist:
If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist
Otherwise your PR may be subject to ARM review requirements. Complete the following:
Check this box if any of the following apply to the PR so that label “WaitForARMFeedback” will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.
-[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits.
Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.
If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.
Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.