8209b40526
The original contents of `vendor` were inadvertently captured with an older version of `godep`. Here, we recapture dependencies by running the following: ``` godep restore -v cat Godeps/Godeps.json | jq -r '.Deps[].ImportPath' | xargs godep update -v ``` The newer godep makes the following changes as it captures dependencies: * Skips test files * Copies `LICENSE` / `PATENTS` files There is also an additional diff in `golang.org/x/sys/unix` that looks very similar to the diff between `master..c65f27f` in that repo, so I'm guessing that dependency was accidentally captured from master instead of the commit saved to `Godeps.json`. All in all, these changes should all be "more correct" and result in smaller diffs for any future updates made to dependencies. |
||
---|---|---|
.. | ||
about | ||
cli | ||
cluster | ||
datacenter | ||
datastore | ||
device | ||
dvs | ||
emacs | ||
events | ||
examples | ||
extension | ||
fields | ||
flags | ||
host | ||
importx | ||
license | ||
logs | ||
ls | ||
permissions | ||
pool | ||
test | ||
vapp | ||
version | ||
vm | ||
.gitignore | ||
CHANGELOG.md | ||
README.md | ||
build.sh | ||
main.go | ||
release.sh |
README.md
govc
govc is a vSphere CLI built on top of govmomi.
Installation
You can find prebuilt govc binaries on the releases page.
Download and install a binary locally like this:
curl $URL_TO_BINARY | gzip -d > /usr/local/bin/govc
chmod +x /usr/local/bin/govc
Source
You can install the latest govc version from source if you have the Go toolchain installed.
go get github.com/vmware/govmomi/govc
(make sure $GOPATH/bin
is in your PATH
)
Usage
govc exposes its functionality through subcommands. Option flags to these subcommands are often shared.
Common flags include:
-u
: ESXi or vCenter URL (ex:user:pass@host
)-debug
: Trace requests and responses (to~/.govmomi/debug
)
Managed entities can be referred to by their absolute path or by their relative
path. For example, when specifying a datastore to use for a subcommand, you can
either specify it as /mydatacenter/datastore/mydatastore
, or as
mydatastore
. If you're not sure about the name of the datastore, or even the
full path to the datastore, you can specify a pattern to match. Both
/*center/*/my*
(absolute) and my*store
(relative) will resolve to the same
datastore, given there are no other datastores that match those globs.
The relative path in this example can only be used if the command can
umambigously resolve a datacenter to use as origin for the query. If no
datacenter is specified, govc defaults to the only datacenter, if there is only
one. The datacenter itself can be specified as a pattern as well, enabling the
following arguments: -dc='my*' -ds='*store'
. The datastore pattern is looked
up and matched relative to the datacenter which itself is specified as a
pattern.
Besides specifying managed entities as arguments, they can also be specified using environment variables. The following environment variables are used by govc to set defaults:
-
GOVC_USERNAME
: USERNAME to use. -
GOVC_PASSWORD
: PASSWORD to use. -
GOVC_URL
: URL of ESXi or vCenter instance to connect to.The URL scheme defaults to
https
and the URL path defaults to/sdk
. This means that specifyinguser:pass@host
is equivalent tohttps://user:pass@host/sdk
.If password include special characters like
#
or:
you can useGOVC_USERNAME
andGOVC_PASSWORD
to have a simpleGOVC_URL
-
GOVC_INSECURE
: Allow establishing insecure connections.Use this option when the host you're connecting is using self-signed certificates, or is otherwise trusted. Set this option to
1
to enable. -
GOVC_DATACENTER
-
GOVC_DATASTORE
-
GOVC_NETWORK
-
GOVC_RESOURCE_POOL
-
GOVC_HOST
-
GOVC_GUEST_LOGIN
: Guest credentials for guest operations
Examples
-
About
$ export GOVC_URL="192.168.1.20" $ export GOVC_USERNAME="domain\administrator" $ export GOVC_PASSWORD="Password123#" $ govc about Name: VMware vCenter Server Vendor: VMware, Inc. Version: 6.0.0 Build: 2656761 OS type: linux-x64 API type: VirtualCenter API version: 6.0 Product ID: vpx UUID: c9f0242f-10e3-4e10-85d7-5eea7c855188
Projects using govc
License
govc is available under the Apache 2 license.