A Go library for interacting with VMware vSphere APIs (ESXi and/or vCenter).
In addition to the vSphere API client, this repository includes:
This library is built for and tested against ESXi and vCenter 6.5, 6.7 and 7.0.
It may work with versions 5.1, 5.5 and 6.0, but neither are officially supported.
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.
go get -u github.com/vmware/govmomi
Installation instructions, released binaries and Docker images are documented in
the respective README files of govc
and
vcsim
.
Contributors and users are encouraged to collaborate using GitHub issues and/or Slack. Access to Slack requires a VMware {code} membership.
Changes to the API are subject to semantic versioning.
Refer to the CHANGELOG for version to version changes.
govmomi is available under the Apache 2 license.
Pronounced "go-v-mom-ie"
Follows pyvmomi and rbvmomi: language prefix + the vSphere acronym "VM Object Management Infrastructure".