mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-22 18:50:08 +03:00
Merge branch 'master' of git.opennebula.org:one
This commit is contained in:
commit
18c3e5f9ba
@ -31,7 +31,10 @@ class OpenNebulaHM < OpenNebulaNetwork
|
||||
|
||||
create_bridge bridge if !bridge_exists? bridge
|
||||
|
||||
create_dev_vlan(dev, vlan) if !device_exists?(dev, vlan)
|
||||
if !device_exists?(dev, vlan)
|
||||
create_dev_vlan(dev, vlan)
|
||||
ifup(dev, vlan)
|
||||
end
|
||||
|
||||
if !attached_bridge_dev?(bridge, dev, vlan)
|
||||
attach_brigde_dev(bridge, dev, vlan)
|
||||
@ -73,4 +76,9 @@ class OpenNebulaHM < OpenNebulaNetwork
|
||||
dev = "#{dev}.#{vlan}" if vlan
|
||||
system("#{COMMANDS[:brctl]} addif #{bridge} #{dev}")
|
||||
end
|
||||
|
||||
def ifup(dev, vlan=nil)
|
||||
dev = "#{dev}.#{vlan}" if vlan
|
||||
system("#{COMMANDS[:ip]} set #{dev} up")
|
||||
end
|
||||
end
|
||||
|
@ -132,3 +132,21 @@ describe 'firewall' do
|
||||
$collector[:system].should == fw_activate_rules
|
||||
end
|
||||
end
|
||||
|
||||
describe 'host-managed' do
|
||||
it "tag tun/tap devices with vlans in kvm" do
|
||||
$capture_commands = {
|
||||
/virsh.*dumpxml/ => OUTPUT[:virsh_dumpxml_phydev],
|
||||
/brctl show/ => OUTPUT[:brctl_show]
|
||||
}
|
||||
hm = OpenNebulaHM.new(OUTPUT[:onevm_show_phydev_kvm],"kvm")
|
||||
hm.activate
|
||||
|
||||
hm_activate_rules = ["sudo /usr/sbin/brctl addbr onebr6",
|
||||
"sudo /sbin/ip link show eth0.8",
|
||||
"sudo /sbin/vconfig add eth0 8",
|
||||
"sudo /sbin/ip set eth0.8 up",
|
||||
"sudo /usr/sbin/brctl addif onebr6 eth0.8"]
|
||||
$collector[:system].should == hm_activate_rules
|
||||
end
|
||||
end
|
||||
|
4
src/vnm_mad/test/output/brctl_show
Normal file
4
src/vnm_mad/test/output/brctl_show
Normal file
@ -0,0 +1,4 @@
|
||||
bridge name bridge id STP enabled interfaces
|
||||
bpriv 8000.00238bcea87c no eth0
|
||||
vnet0
|
||||
bpub 8000.00238bcea87d no eth1
|
38
src/vnm_mad/test/output/virsh_dumpxml_phydev
Normal file
38
src/vnm_mad/test/output/virsh_dumpxml_phydev
Normal file
@ -0,0 +1,38 @@
|
||||
<domain type='kvm' id='3'>
|
||||
<name>one-9</name>
|
||||
<uuid>9912b565-2d3b-f4ca-17d2-425395b57e64</uuid>
|
||||
<memory>65536</memory>
|
||||
<currentMemory>65536</currentMemory>
|
||||
<vcpu>1</vcpu>
|
||||
<os>
|
||||
<type arch='i686' machine='pc-0.12'>hvm</type>
|
||||
<boot dev='hd'/>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<on_poweroff>destroy</on_poweroff>
|
||||
<on_reboot>restart</on_reboot>
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<emulator>/usr/bin/kvm</emulator>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='qemu' type='raw'/>
|
||||
<source file='/srv/cloud/images/playground/jaime/9/images/disk.0'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
<mac address='02:00:c0:a8:00:65'/>
|
||||
<source bridge='bpriv'/>
|
||||
<target dev='vnet2'/>
|
||||
</interface>
|
||||
<interface type='bridge'>
|
||||
<mac address='02:00:0a:00:00:67'/>
|
||||
<source bridge='onebr6'/>
|
||||
<target dev='vnet3'/>
|
||||
</interface>
|
||||
</devices>
|
||||
<seclabel type='dynamic' model='apparmor'>
|
||||
<label>libvirt-9912b565-2d3b-f4ca-17d2-425395b57e64</label>
|
||||
<imagelabel>libvirt-9912b565-2d3b-f4ca-17d2-425395b57e64</imagelabel>
|
||||
</seclabel>
|
||||
</domain>
|
||||
|
Loading…
x
Reference in New Issue
Block a user