cfa299d2ee
Nomad was manually updated, so revert that to the version in master, remove it from vendor.json and add it to the ignore list. Update all packages that were in an unknown state to their latest master commits. |
||
---|---|---|
.. | ||
types/v56 | ||
LICENSE | ||
README.md | ||
api.go | ||
api_vca.go | ||
api_vcd.go | ||
catalog.go | ||
catalogitem.go | ||
edgegateway.go | ||
org.go | ||
orgvdcnetwork.go | ||
query.go | ||
task.go | ||
vapp.go | ||
vapptemplate.go | ||
vdc.go | ||
vm.go |
README.md
vmware-govcd
This package was originally forked from github.com/vmware/govcloudair before pulling in rickard-von-essen's great changes to allow using a vCloud Director API. On top of this I have added features as needed for a terraform provider for vCloud Director
Example
package main
import (
"fmt"
"net/url"
"os"
"github.com/hmrc/vmware-govcd"
)
type Config struct {
User string
Password string
Org string
Href string
VDC string
Insecure bool
}
func (c *Config) Client() (*govcd.VCDClient, error) {
u, err := url.ParseRequestURI(c.Href)
if err != nil {
return nil, fmt.Errorf("Unable to pass url: %s", err)
}
vcdclient := govcd.NewVCDClient(*u, c.Insecure)
org, vcd, err := vcdclient.Authenticate(c.User, c.Password, c.Org, c.VDC)
if err != nil {
return nil, fmt.Errorf("Unable to authenticate: %s", err)
}
vcdclient.Org = org
vcdclient.OrgVdc = vcd
return vcdclient, nil
}
func main() {
config := Config{
User: "Username",
Password: "password",
Org: "vcd org",
Href: "vcd api url",
VDC: "vcd virtual datacenter name",
}
client, err := config.Client() // We now have a client
if err != nil {
fmt.Println(err)
os.Exit(1)
}
fmt.Printf("Org URL: %s\n", client.OrgHREF.String())
}