Skip to content

Instantly share code, notes, and snippets.

@aussielunix
Created April 1, 2013 08:28
Show Gist options
  • Save aussielunix/5283819 to your computer and use it in GitHub Desktop.
Save aussielunix/5283819 to your computer and use it in GitHub Desktop.
fog_vsphere_clone_vm.rb
#!/usr/bin/env ruby
require 'fog'
require 'pp'
connection = Fog::Compute[:vsphere]
puts "Connected to #{connection.vsphere_server} as #{connection.vsphere_username} (API version #{connection.vsphere_rev})"
options = {
:datacenter => 'syd07',
:cluster => 'silver',
:wait => true,
:folder => 'test/',
:src_name => 'test-web-01',
:name => 'test-web-02',
:relative_path => 'test/',
}
servers = connection.servers.all(options)
server = servers.select {|vm| vm.name == options[:src_name] }
new_vm = server.first.clone(options)
pp new_vm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment