Azure / azure-sdk-for-php

Microsoft Azure SDK for PHP
http://azure.microsoft.com/en-us/develop/php/
Apache License 2.0
415 stars 274 forks source link

Public Notice: Preview of Azure Resource Management API for PHP #858

Open yaqiyang opened 8 years ago

yaqiyang commented 8 years ago

We have made available the preview of Azure Resource Management API for PHP at https://github.com/Azure/azure-sdk-for-php/tree/arm. In this preview, we took a different approach to handle the fast changing pace of the Azure API.

All API access code files are generated by AutoRest (https://github.com/Azure/autorest) through Swagger documents published by the API owners. If you experience any problems with any API calls in the SDK, please raise an issue instead of a new pull request. We will not directly modify the code files and will generate them through AutoRest instead.

At this time, the AutoRest PHP code generator is published yet. So the only way to fix any issue in the API call is through issues, not PRs to the code generator.

Another major change in the SDK is that we use PHP arrays as parameters when interacting the Azure REST APIs instead of using model classes in the past. That vastly improved the code generation process and also made the SDK code easier to maintain when dealing with multiple Azure API versions. In the past for different Azure API versions, the parameters may be different and we have to have different model classes. With arrays, the parameter types will stay the same and the only changes will be the values in the arrays.

All input and output arrays used with API calls are documented in the function code comments.

To get started, please refer to the code samples at https://github.com/Azure/azure-sdk-for-php/tree/arm/examples/Arm

Thanks The PHP Azure SDK team

phansys commented 6 years ago

This is a follow up of this comment: https://github.com/Azure/azure-sdk-for-php/issues/926#issuecomment-391141277. @sergey-shandar, @yaqiyang; is the arm branch intended to be part of a new release of this library (mean, v2 by instance) or is that branch a release candidate for a new library? My concerns are about the possibility to have both APIs working simultaneously, so I'd like to know which is the strategy you are proposing about this. The solutions I think could be possible are:

  1. Keep 0.x and 1.x branches as ASM compliant, while 2.x branch drops support for ASM and adds support for ARM;
  2. Keep 0.x and 1.x branches as ASM compliant, while 2.x branch keeps (deprecated) support for ASM and adds support for ARM;
  3. Keep all branches of this library as ASM compliant, and create a new library for ARM API. I think the 2nd solution is currently the most convenient, since it could keep both APIs working, allowing to drop support for ASM from 3.x.

Thank you in advance.

smoelker commented 6 years ago

Are there any intentions to fully support the Azure Rest API any time soon? The ARM nor the ARM2 branch has been updated in the last two years.