vmware / vsphere-automation-sdk-python

Python samples, language bindings, and API reference documentation for vSphere, VMC, and NSX-T using the VMware REST API
MIT License
746 stars 313 forks source link

Switch Rest implementation to use the proper Rest client to allow govcsim testing #353

Open laidbackware opened 1 year ago

laidbackware commented 1 year ago

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

As per the issue in https://github.com/vmware/vsphere-automation-sdk-python/issues/352, I would like to be able to use the govcsim to perform integration tests of vSphere with Tanzu Ansible modules written using this SDK, but am blocked because the SDK uses an internal vAPI JSON-RPC-like protocol, which is not implemented but the govcsim.

Switching this SDK over to the full publicly documented Rest API would increase it's use by allowing all code to be tested against the govcsim, not just the pyvmomi, which works today.

Describe the solution you'd like

I would like the SDK to switch all communications over to the Rest API so that it is fully compliant with the public API spec and therefor the govc tools.

Describe alternatives you've considered

For me to add integration testing to my code I would need to build a significant amount of infrastructure automation, which would have significant cost. Given my that the modules will be released via vmware-tanzu-labs, they will not be product backed, meaning we do not have budget for a proper testing setup.

Additional context

I have permission to release the modules via the VMware Github process and have a minimally working version ready, but am essentially blocked, as I can't expect folks to develop them without integration testing.