A Go library for interacting with VMware vSphere APIs (ESXi and/or vCenter).
For govc
, a CLI built on top of govmomi, check out the govc directory.
This library is built for and tested against ESXi and vCenter 5.5.
If you're able to use it against older versions of ESXi and/or vCenter, please leave a note and we'll include it in this compatibility list.
The APIs exposed by this library very closely follow the API described in the VMware vSphere API Reference Documentation. Refer to this document to become familiar with the upstream API.
The code in the govmomi
package is a wrapper for the code that is generated from the vSphere API description.
It primarily provides convenience functions for working with the vSphere API.
See godoc.org for documentation.
The API is a work in progress. Because the code in the vim25
package is
generated from the vSphere API description, you can safely use all types and
functions in those packages without worrying about deprecation. The code in the
the root govmomi
package is what is a work in progress.
After the library reaches v1.0, changes to the API will be subject to semantic versioning.
govmomi is available under the Apache 2 license.