mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 10:08:40 -05:00
(POOLER-166) Vmpooler should check DNS to ensure a record does not exist before VM creation
initial draft
This commit is contained in:
parent
46af69f67b
commit
616db575f8
5 changed files with 65 additions and 1 deletions
|
|
@ -189,7 +189,10 @@ MockVirtualMachine = Struct.new(
|
|||
:name,
|
||||
# From RbVmomi::VIM::ManagedEntity
|
||||
# https://github.com/vmware/rbvmomi/blob/master/lib/rbvmomi/vim/ManagedEntity.rb
|
||||
:path
|
||||
:path,
|
||||
# https://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.vm.GuestInfo.html
|
||||
# From GuestInfo
|
||||
:guest
|
||||
)
|
||||
|
||||
MockVirtualMachineSnapshot = Struct.new(
|
||||
|
|
@ -288,6 +291,18 @@ MockVirtualHardware = Struct.new(
|
|||
:device
|
||||
)
|
||||
|
||||
MockGuestInfo = Struct.new(
|
||||
# https://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.vm.GuestInfo.html
|
||||
# From GuestInfo
|
||||
:hostName, :ipAddress, :net
|
||||
)
|
||||
|
||||
MockGuestNicInfo = Struct.new(
|
||||
# https://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.vm.GuestInfo.NicInfo.html
|
||||
# From GuestNicInfo
|
||||
:connected, :ipAddress, :macAddress
|
||||
)
|
||||
|
||||
MockVirtualMachineConfigInfo = Struct.new(
|
||||
# https://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.vm.ConfigInfo.html
|
||||
# From VirtualMachineConfigInfo
|
||||
|
|
@ -691,6 +706,8 @@ def mock_RbVmomi_VIM_VirtualMachine(options = {})
|
|||
mock = MockVirtualMachine.new()
|
||||
mock.config = MockVirtualMachineConfigInfo.new()
|
||||
mock.config.hardware = MockVirtualHardware.new([])
|
||||
mock.guest = MockGuestInfo.new()
|
||||
mock.guest.net = MockGuestNicInfo.new([])
|
||||
mock.summary = MockVirtualMachineSummary.new()
|
||||
mock.summary.runtime = MockVirtualMachineRuntimeInfo.new()
|
||||
mock.summary.guest = MockVirtualMachineGuestSummary.new()
|
||||
|
|
|
|||
|
|
@ -3312,6 +3312,16 @@ EOT
|
|||
|
||||
expect(subject.find_vm(poolname,missing_vm,connection)).to be_nil
|
||||
end
|
||||
|
||||
it 'new test' do
|
||||
expect(connection.searchIndex).to receive(:FindByInventoryPath).and_return(vm_object)
|
||||
nic_a = MockGuestNicInfo.new()
|
||||
nic_b = MockGuestNicInfo.new()
|
||||
expect(vm_object.guest).to receive(:net).and_return([nic_a,nic_b])
|
||||
expect(nic_a).to receive(:ipAddress).and_return(["192.168.0.1", "192.168.0.2"])
|
||||
expect(nic_b).to receive(:ipAddress).and_return(["192.167.0.1"])
|
||||
subject.get_all_ip_for_nics(poolname,missing_vm,connection)
|
||||
end
|
||||
end
|
||||
|
||||
describe '#get_base_vm_container_from' do
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue