mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-20 10:50:08 +03:00
feature #3175: Move VNM drivers to new modules
This commit is contained in:
parent
90c3e9ffb1
commit
e3a71b17da
@ -14,9 +14,9 @@
|
||||
# limitations under the License. #
|
||||
#--------------------------------------------------------------------------- #
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'vnmmad'
|
||||
|
||||
class EbtablesVLAN < OpenNebulaNetwork
|
||||
class EbtablesVLAN < VNMMAD::OpenNebulaNetwork
|
||||
DRIVER = "ebtables"
|
||||
|
||||
XPATH_FILTER = "TEMPLATE/NIC[VLAN='YES']"
|
||||
|
@ -19,7 +19,6 @@
|
||||
$: << File.dirname(__FILE__)
|
||||
$: << File.join(File.dirname(__FILE__), "..")
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'Ebtables'
|
||||
|
||||
template64 = ARGV[0]
|
||||
@ -27,5 +26,5 @@ template64 = ARGV[0]
|
||||
onevlan = EbtablesVLAN.from_base64(template64)
|
||||
onevlan.deactivate
|
||||
|
||||
filter_driver = OpenNebulaNetwork.filter_driver(template64)
|
||||
filter_driver = VNMMAD::OpenNebulaNetwork.filter_driver(template64)
|
||||
filter_driver.deactivate
|
||||
|
@ -19,7 +19,6 @@
|
||||
$: << File.dirname(__FILE__)
|
||||
$: << File.join(File.dirname(__FILE__), "..")
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'Ebtables'
|
||||
|
||||
template64 = ARGV[0]
|
||||
@ -29,7 +28,7 @@ onevlan = EbtablesVLAN.from_base64(template64, deploy_id)
|
||||
onevlan.activate
|
||||
|
||||
begin
|
||||
filter_driver = OpenNebulaNetwork.filter_driver(template64, deploy_id)
|
||||
filter_driver = VNMMAD::OpenNebulaNetwork.filter_driver(template64, deploy_id)
|
||||
filter_driver.activate
|
||||
rescue Exception => e
|
||||
OpenNebula.log_error(e.message)
|
||||
|
@ -19,12 +19,12 @@
|
||||
$: << File.dirname(__FILE__)
|
||||
$: << File.join(File.dirname(__FILE__), "..")
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'vnmmad'
|
||||
|
||||
template64 = ARGV[0]
|
||||
|
||||
begin
|
||||
filter_driver = OpenNebulaNetwork.filter_driver(template64)
|
||||
filter_driver = VNMMAD::OpenNebulaNetwork.filter_driver(template64)
|
||||
filter_driver.deactivate
|
||||
rescue Exception => e
|
||||
OpenNebula.log_error(e.message)
|
||||
|
@ -19,13 +19,13 @@
|
||||
$: << File.dirname(__FILE__)
|
||||
$: << File.join(File.dirname(__FILE__), "..")
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'vnmmad'
|
||||
|
||||
template64 = ARGV[0]
|
||||
deploy_id = ARGV[1]
|
||||
|
||||
begin
|
||||
filter_driver = OpenNebulaNetwork.filter_driver(template64, deploy_id)
|
||||
filter_driver = VNMMAD::OpenNebulaNetwork.filter_driver(template64, deploy_id)
|
||||
filter_driver.activate
|
||||
rescue Exception => e
|
||||
OpenNebula.log_error(e.message)
|
||||
|
@ -14,9 +14,9 @@
|
||||
# limitations under the License. #
|
||||
#--------------------------------------------------------------------------- #
|
||||
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'vnmmad'
|
||||
|
||||
class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
class OpenvSwitchVLAN < VNMMAD::OpenNebulaNetwork
|
||||
DRIVER = "ovswitch"
|
||||
|
||||
FIREWALL_PARAMS = [:black_ports_tcp,
|
||||
@ -91,7 +91,7 @@ class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
end
|
||||
|
||||
def tag_vlan
|
||||
cmd = "#{COMMANDS[:ovs_vsctl]} set Port #{@nic[:tap]} "
|
||||
cmd = "#{VNMMAD::COMMANDS[:ovs_vsctl]} set Port #{@nic[:tap]} "
|
||||
cmd << "tag=#{vlan}"
|
||||
|
||||
run cmd
|
||||
@ -100,7 +100,7 @@ class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
def tag_trunk_vlans
|
||||
range = @nic[:vlan_tagged_id]
|
||||
if range? range
|
||||
ovs_vsctl_cmd = "#{COMMANDS[:ovs_vsctl]} set Port #{@nic[:tap]}"
|
||||
ovs_vsctl_cmd = "#{VNMMAD::COMMANDS[:ovs_vsctl]} set Port #{@nic[:tap]}"
|
||||
|
||||
cmd = "#{ovs_vsctl_cmd} trunks=#{range}"
|
||||
run cmd
|
||||
@ -159,7 +159,7 @@ class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
def del_flows
|
||||
in_port = ""
|
||||
|
||||
dump_flows = "#{COMMANDS[:ovs_ofctl]} dump-flows #{@nic[:bridge]}"
|
||||
dump_flows = "#{VNMMAD::COMMANDS[:ovs_ofctl]} dump-flows #{@nic[:bridge]}"
|
||||
`#{dump_flows}`.lines do |flow|
|
||||
next unless flow.match("#{@nic[:mac]}")
|
||||
flow = flow.split.select{|e| e.match(@nic[:mac])}.first
|
||||
@ -175,13 +175,13 @@ class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
def add_flow(filter,action,priority=nil)
|
||||
priority = (priority.to_s.empty? ? "" : "priority=#{priority},")
|
||||
|
||||
run "#{COMMANDS[:ovs_ofctl]} add-flow " <<
|
||||
run "#{VNMMAD::COMMANDS[:ovs_ofctl]} add-flow " <<
|
||||
"#{@nic[:bridge]} #{filter},#{priority}actions=#{action}"
|
||||
end
|
||||
|
||||
def del_flow(filter)
|
||||
filter.gsub!(/priority=(\d+)/,"")
|
||||
run "#{COMMANDS[:ovs_ofctl]} del-flows " <<
|
||||
run "#{VNMMAD::COMMANDS[:ovs_ofctl]} del-flows " <<
|
||||
"#{@nic[:bridge]} #{filter}"
|
||||
end
|
||||
|
||||
@ -192,7 +192,7 @@ class OpenvSwitchVLAN < OpenNebulaNetwork
|
||||
def port
|
||||
return @nic[:port] if @nic[:port]
|
||||
|
||||
dump_ports = `#{COMMANDS[:ovs_ofctl]} \
|
||||
dump_ports = `#{VNMMAD::COMMANDS[:ovs_ofctl]} \
|
||||
dump-ports #{@nic[:bridge]} #{@nic[:tap]}`
|
||||
|
||||
@nic[:port] = dump_ports.scan(/^\s*port\s*(\d+):/).flatten.first
|
||||
|
@ -34,9 +34,9 @@ $: << RUBY_LIB_LOCATION
|
||||
|
||||
require 'yaml'
|
||||
require 'CommandManager'
|
||||
require 'OpenNebulaNetwork'
|
||||
require 'vnmmad'
|
||||
|
||||
class OpenNebulaVMware < OpenNebulaNetwork
|
||||
class OpenNebulaVMware < VNMMAD::OpenNebulaNetwork
|
||||
DRIVER = "vmware"
|
||||
|
||||
XPATH_FILTER = "TEMPLATE/NIC"
|
||||
|
Loading…
x
Reference in New Issue
Block a user