Sha256: 99b30e912705fad6c512b0e837e4bd11d9999d2dcc52ec50c4234a28d280551e
Contents?: true
Size: 1.23 KB
Versions: 4
Compression:
Stored size: 1.23 KB
Contents
# Communication setup Comm.init(:xmpp) def create_vm(vm_name, host) opts = { name: 'my_VM_123', ubuntu_opts: { bridge: 'br0' }, vmbuilder_opts: { ip: '10.0.0.240', net: '10.0.0.0', bcast: '10.255.255.255', mask: '255.0.0.0', gw: '10.0.0.200', dns: '10.0.0.200' } } host.create(:vm, opts) do |msg| if msg.success? vm = msg.resource on_vm_created(vm, host) else logger.error "Resource creation failed - #{msg[:reason]}" end end end def on_vm_created(vm, host) logger.info "Created #{vm}" vm.on_inform_status do |msg| msg.each_property do |name, value| logger.info "#{name} => #{value}" end if vm.state == :running puts "HURRAY, vm '#{vm}' is up and running" end end vm.after(10) do vm.configure(state: :run) end end OmfCommon.eventloop.run do |el| OmfCommon.comm.on_connected do |comm| # Get handle on existing entity comm.subscribe('host_1') do |host| host.on_inform_failed do |msg| logger.error msg end # wait until host topic is ready to receive host.on_subscribed do create_vm(host) end end el.after(20) { el.stop } end end puts "DONE"
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
omf_common-6.0.2.pre.2 | example/vm_alt.rb |
omf_common-6.0.2.pre.1 | example/vm_alt.rb |
omf_common-6.0.0 | example/vm_alt.rb |
omf_common-6.0.0.pre.11 | example/vm_alt.rb |