vsphere-automation-sdk-go icon indicating copy to clipboard operation
vsphere-automation-sdk-go copied to clipboard

Provide compatibility level in README or release notes

Open briantopping opened this issue 9 months ago • 4 comments

Is your feature request related to a problem? Please describe.

I'm not sure what compatibility of this library is with specific versions of vSphere. Is that information be provided somewhere or could it be provided?

Describe the solution you'd like

It would be ideal if the README were updated to include compatibility information. For instance, there are a lot of deprecated APIs right now with the manager API and it's not clear that a client using this library will remain compatibile.

Describe alternatives you've considered

There are hundreds of APIs, it would be difficult to determine what the developers intended in a given release. Maybe I am missing something obvious though!

Additional context

No response

briantopping avatar Oct 05 '23 17:10 briantopping

vSphere bindings are not provided in this repository. Are you asking about some specific product version?

bhagatp10 avatar Oct 30 '23 12:10 bhagatp10

Yes, looking for clients of the library to be able to determine (if only transitively) the vSphere version range that a given library version supports.

briantopping avatar Oct 30 '23 19:10 briantopping

Please check with goVmomi regarding this.

bhagatp10 avatar Oct 31 '23 09:10 bhagatp10

Couple of notes:

  1. This SDK has APIs for NSX and VMware Cloud on AWS only. There are no vCenter or ESX APIs in this SDK despite the name implying otherwise.
  2. Regarding changes to APIs in vCenter and ESX ti is best to consult the product documentation on developer.vmware.com. It is not ideal. You can find some resources. There are dedicated pages for the core virtual machine and ESX, cluster management API (web service API) in both JSON and XML (see the links under "What's new in..") formats
  3. The way compatibility works with vCenter is complex as the system is big and complex. In every release there would be new APIs added and some APIs extended. Occasionally there are APIs marked deprecated and after one major release these could be disabled or possibly removed. Note that on many occasions vCenter keeps deprecated APIs longer as to not break various integrations. Such disablement or removal VMware tries to keep to major releases like 7.0, 8.0, 9.0 etc. However such changes due to security may happen in updates. As a user of the API you can monitor for deprecated APIs and update your software to move away from the deprecated APIs to new ones ahead of removal. Typically alternatives will be available along side the deprecation notice.
  4. For golang and vCenter, ESX you should look into Govmomi. It contains bindings for most APIs all Management APIs (using SOAP and JSON as needed) and some of the Automation APIs (REST API). For some of the automation APIs not covered in govmomi you can use them with the golang built-in JSON and HTTP facilities.

karaatanassov avatar Oct 31 '23 10:10 karaatanassov