1
0
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:
Ruben S. Montero 2014-12-22 20:10:53 +01:00
parent 90c3e9ffb1
commit e3a71b17da
7 changed files with 18 additions and 20 deletions

View File

@ -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']"

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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"