terraform/vendor/github.com/hmrc/vmware-govcd
James Bardin cfa299d2ee Update deps in unknown state and rever nomad
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.
2017-01-19 20:10:17 -05:00
..
types/v56 Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00
LICENSE Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
README.md Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00
api.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
api_vca.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
api_vcd.go Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00
catalog.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
catalogitem.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
edgegateway.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
org.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
orgvdcnetwork.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
query.go Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00
task.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
vapp.go Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00
vapptemplate.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
vdc.go Vendor all dependencies w/ Godep 2016-01-29 15:08:48 -06:00
vm.go Update deps in unknown state and rever nomad 2017-01-19 20:10:17 -05:00

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())
}