Skip to content
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

[SRP] Add new property EnabledProtocols for file shares #7815

Closed
wants to merge 9 commits into from

Conversation

zfchen95
Copy link
Contributor

Approved in private branch. https://github.com/Azure/azure-rest-api-specs-pr/pull/859

Latest improvements:

MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow.

Contribution checklist:

  • I have reviewed the documentation for the workflow.
  • Validation tools were run on swagger spec(s) and have all been fixed in this PR.
  • The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

  • Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
  • adding/removing APIs.
  • adding/removing properties.
  • adding/removing API-version.
  • adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

  • If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
    Please follow the link to find more details on API review process.

@AutorestCI
Copy link

AutorestCI commented Nov 20, 2019

Automation for azure-sdk-for-go

A PR has been created for you:
Azure/azure-sdk-for-go#6461

@azuresdkci
Copy link
Contributor

Can one of the admins verify this patch?

@AutorestCI
Copy link

AutorestCI commented Nov 20, 2019

Automation for azure-sdk-for-python

A PR has been created for you based on this PR content.

Once this PR will be merged, content will be added to your service PR:
Azure/azure-sdk-for-python#8761

@njuCZ njuCZ added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 21, 2019
},
"description": "Protocols for file shares"
},
"rootSquash": {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The enum name is same as one of it's value (both "RootSquash"). This will make the .NET SDK code generated from it build fail.

@@ -239,7 +242,7 @@
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/FileShare"
"$ref": "#/definitions/FileShareCreateParameters"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are you forking the body definition for create/put? With the readonly fields of FileShare, FileShareCreateParameters is effectively the same. Doing this will generate a 2 classes the user would interact with for no real reason.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

EnabledProtocol is the property that can only be set at creation. We can stay with one body definition. But customer will be confused since enabledProtocol cannot be updated.

@@ -524,10 +544,107 @@
"minimum": 1,
"maximum": 5120,
"description": "The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5TB (5120)."
},
"enabledProtocols": {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding writable fields to a stable api version is seen as a breaking change and requires a new api version. See the section labeled 'New property added to response' in the following link. This was introduced long back to prevent breaking previous versions of the sdk.

https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Breaking%20changes%20guidelines.md#new-property-added-to-response

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From the server side, if the new properties did not show up in the request, we will no wipe them out. We have a lot of experience in adding new properties to storage account in the existing API version. It (Get-Put model) is not a concern from my prospect..

@ryansbenson ryansbenson added the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Nov 21, 2019
@zfchen95 zfchen95 requested a review from ryansbenson November 22, 2019 21:27
@@ -312,8 +315,7 @@
"200": {
"description": "OK -- Update Share operation completed successfully.",
"schema": {
"$ref": "#/definitions/FileShare",
"description": "Properties of the updated file share."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should not remove the description, or the doc/SDK generated from swagger will missing description for this property.
We can change it to make it more accurate.

@blueww blueww added the DoNotMerge <valid label in PR review process> use to hold merge after approval label Nov 27, 2019
@blueww
Copy link
Member

blueww commented Nov 27, 2019

The feature target public preview on 2020,Feb , so don't merge it now.

Copy link
Contributor

@KrisBash KrisBash left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Signing off for ARM. Issues with enum name notwithstanding

@KrisBash KrisBash added ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review and removed ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Dec 3, 2019
@azure-pipelines
Copy link

Comment was made before the most recent commit for PR 7815 in repo Azure/azure-rest-api-specs

@Juliehzl
Copy link
Contributor

Juliehzl commented Feb 7, 2020

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@openapi-sdkautomation
Copy link

openapi-sdkautomation bot commented Feb 7, 2020

azure-sdk-for-go

⚠️ warning [Logs] [Expand Details]
  • ⚠️ Generate from c95b01e with merge commit e9bbf4159d9fd403464231eab2ac20299b853ef2. SDK Automation 13.0.17.20191226.1
  • ⚠️preview/storage/mgmt/2015-05-01-preview [Logs
      No file is changed.
    • ⚠️preview/storage/mgmt/2018-03-01-preview [Logs
        No file is changed.
      • ⚠️storage/mgmt/2015-06-15 [Logs
          No file is changed.
        • ⚠️storage/mgmt/2016-01-01 [Logs
            No file is changed.
          • ⚠️storage/mgmt/2016-05-01 [Logs
              No file is changed.
            • ⚠️storage/mgmt/2016-12-01 [Logs
                No file is changed.
              • ⚠️storage/mgmt/2017-06-01 [Logs
                  No file is changed.
                • ⚠️storage/mgmt/2017-10-01 [Logs
                    No file is changed.
                  • ⚠️storage/mgmt/2018-02-01 [Logs
                      No file is changed.
                    • ⚠️storage/mgmt/2018-07-01 [Logs
                        No file is changed.
                      • ⚠️storage/mgmt/2018-11-01 [Logs
                          No file is changed.
                        • ⚠️storage/mgmt/2019-04-01 [Logs
                            No file is changed.
                          • ️✔️storage/mgmt/2019-06-01 [Logs]  [Preview SDK Changes]

                          @openapi-sdkautomation
                          Copy link

                          openapi-sdkautomation bot commented Feb 7, 2020

                          azure-sdk-for-net

                          failed [Logs] [Expand Details]

                          @openapi-sdkautomation
                          Copy link

                          openapi-sdkautomation bot commented Feb 7, 2020

                          azure-sdk-for-js

                          ️✔️ succeeded [Logs] [Expand Details]
                          • ️✔️ Generate from c95b01e with merge commit e9bbf4159d9fd403464231eab2ac20299b853ef2. SDK Automation 13.0.17.20191226.1
                          • ️✔️@azure/arm-storage [Logs]  [Preview SDK Changes]
                            [npmPack] npm WARN deprecated rollup-plugin-node-resolve@5.2.0: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-node-resolve.
                            [npmPack] loaded rollup.config.js with warnings
                            [npmPack] (!) Unused external imports
                            [npmPack] default imported from external module 'rollup' but never used
                            [npmPack] 
                            [npmPack] ./esm/storageManagementClient.js → ./dist/arm-storage.js...
                            [npmPack] created ./dist/arm-storage.js in 471ms

                          @openapi-sdkautomation
                          Copy link

                          openapi-sdkautomation bot commented Feb 7, 2020

                          azure-sdk-for-java

                          ⚠️ warning [Logs] [Expand Details]

                          @openapi-sdkautomation
                          Copy link

                          openapi-sdkautomation bot commented Feb 7, 2020

                          azure-sdk-for-python

                          ️✔️ succeeded [Logs] [Expand Details]
                          • ️✔️ Generate from c95b01e with merge commit e9bbf4159d9fd403464231eab2ac20299b853ef2. SDK Automation 13.0.17.20191226.1
                          • ️✔️azure-mgmt-storage [Logs]  [Preview SDK Changes]
                            [after_scripts|python] WARNING:__main__:Found too much API version: {'2018-03-01-preview', '2018-07-01'} in label v2018_07_01
                            [after_scripts|python] WARNING:__main__:Guessing you want 2018-07-01 based on label v2018_07_01
                            [build_package] /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
                            [build_package]   warnings.warn(msg)
                            [build_package] /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'long_description_content_type'
                            [build_package]   warnings.warn(msg)

                          "name": "EnabledProtocols",
                          "modelAsString": true
                          },
                          "description": "Immutable property for file shares protocol.",
                          Copy link
                          Member

                          Choose a reason for hiding this comment

                          The reason will be displayed to describe this comment to others. Learn more.

                          Please add more description for what the value means. What's the effect when specify each of the 2 values. What's the default value.

                          "name": "RootSquashType",
                          "modelAsString": true
                          },
                          "description": "Reduction of the access rights for the remote superuser."
                          Copy link
                          Member

                          Choose a reason for hiding this comment

                          The reason will be displayed to describe this comment to others. Learn more.

                          Please add more description for What's the effect when specify each of the 3 values. What's the default value.

                          @zfchen95 zfchen95 mentioned this pull request Mar 31, 2020
                          5 tasks
                          @zfchen95 zfchen95 closed this Apr 22, 2020
                          Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
                          Labels
                          ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review DoNotMerge <valid label in PR review process> use to hold merge after approval
                          Projects
                          None yet
                          Development

                          Successfully merging this pull request may close these issues.

                          8 participants