-
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
[AKS] add POST endpoint for fetching accessProfiles #3098
Conversation
Automation for azure-sdk-for-pythonThe initial PR has been merged into your service PR: |
Automation for azure-sdk-for-nodeThe initial PR has been merged into your service PR: |
Automation for azure-libraries-for-javaThe initial PR has been merged into your service PR: |
Automation for azure-sdk-for-goThe initial PR has been merged into your service PR: |
@@ -154,6 +154,58 @@ | |||
} | |||
} | |||
}, | |||
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": { | |||
"post": { |
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.
@mboersma If this operation is preferred to ManagedClusters_GetAccessProfiles
, you should declare it as deprecated (deprecated: True
and update the description to say something generic like "Use ListCredential instead").
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.
@lmazuel done.
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.
Operation name with prefix List assumes multiple return values in array. You already have "operationId": "ManagedClusters_GetAccessProfiles", which returns exactly the same type ManagedClusterAccessProfile
. then what is a point to add this new endpoint with such a confusing method name?
@hovsepm I was just using the name defined for the endpoint in the AKS RP. I agree it's not good terminology though. We can call it something different in the swagger if that's preferable. The idea here is we'd prefer POST to GET for this sensitive endpoint. @weinong anything to add? |
@mboersma yes please change the operation name. it is used to generate a method names in the SDKs in each language. Name should be self descriptive and discoverable. Please also revise the description because now for this 2 exposed operations
as a user of the generated SDK - how should I understand which method to call? What is the difference between them? |
@@ -116,7 +116,8 @@ | |||
], | |||
"operationId": "ManagedClusters_GetUpgradeProfile", | |||
"summary": "Gets upgrade profile for a managed cluster.", | |||
"description": "Gets the details of the upgrade profile for a managed cluster with a specified resource group and name.", | |||
"deprecated": true, | |||
"description": "Use ManagedClusters_ListCredential instead.", |
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 you are deprecating the wrong operation. I believe you should deprecate operationId ManagedClusters_GetAccessProfiles
, right?
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.
D'oh, my mistake. I'll fix.
@mboersma 👋 out of interest, is there a timeframe for deprecating the old (GET) endpoint? |
@tombuildsstuff once this change makes it into the |
@mboersma given that won't be available in the Go SDK until around that date, I don't feel that's a long enough period for deprecation IMO - we (Terraform) expose these values on our AKS resources, which we consume via the Azure SDK for Go. Whilst we're probably able to time a release shortly after this change goes live - however we should give users some time to update to the new version which uses Post instead of Get. As such - would it be possible for the old endpoint to continue working until the start of July? Whilst I can understand this isn't ideal from your side, I think it's better to not break users workflows without a couple of weeks extra transition period for downstream dependencies once the SDK's are out :) Thanks! |
cc @joshgav / @marstr / @jhendrixMSFT :) |
Honestly, I don't think that's long enough either, I'm just reporting the current intent. I'll bring your feedback to the team and see if we can make the deprecation timeline more humane. |
@mboersma awesome, thanks :) |
@tombuildsstuff we will comply with the standard Azure deprecation policy and keep the GET endpoint functional for 12 more months. (We got similar feedback from ARM review on the newer API in #3131.) |
@mboersma that's awesome, thanks so much :) |
Adds a new POST endpoint that is preferred to GET for fetching AKS access profiles (Kubernetes configs). The endpoint is already deployed to RPs in all AKS regions.
I've tested this with the Python SDK and simple CLI changes that are needed and it works well.
cc: @weinong @shrutir25 @rjtsdl @sauryadas
PR information
api-version
in the path should match theapi-version
in the spec).Quality of Swagger