Wrap openstack.Client in an interface.

Signed-off-by: Ash Wilson <smashwilson@gmail.com>
Alternate openstack Driver creation method.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
De-smurf openstack.OpenStackClient.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Initial cut at a Rackspace driver.

This time, based on a specialization of the OpenStack one. :wrench:

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Register the Rackspace driver in commands.go.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Return a specific type from NewDerivedDriver.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Validate and default Rackspace-specific options.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Only log Openstack creation for Openstack drivers.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
There's no option for MachineName, yet.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Make service init calls into the driver methods.

Otherwise, because of the way Go does method dispatch, derived versions of
those methods will never be called.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Init methods are no-ops when already initialized.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
rackspace.Authenticate is also a no-op if authed.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Use the initialized client.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Fix the endpointType conditional.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Don't die if OS-EXT-IPS is not present.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Override GetInstanceIpAddresses for Rackspace.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Turn selected logging messages to "debug".

Otherwise, they interfere with the output of `machine url` and `machine ls`. `machine url`
is more important because it breaks the export statement to configure docker if it includes
additional output.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Fix syntax and move init calls to the driver.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
gofmt with go1.3 instead of go1.4.

Signed-off-by: Ash Wilson <ash.wilson@rackspace.com>
Merge pull request #2 from smashwilson/rackspace-on-openstack

Rackspace on OpenStack