class Fog::OpenStack::Network::Mock
Public Class Methods
data()
click to toggle source
# File lib/fog/openstack/network.rb, line 264 def self.data @data ||= Hash.new do |hash, key| qos_policy_id = Fog::UUID.uuid network_id = Fog::UUID.uuid extension_id = Fog::UUID.uuid subnet_id = Fog::UUID.uuid tenant_id = Fog::Mock.random_hex(8) hash[key] = { :extensions => { extension_id => { 'id' => extension_id, 'alias' => 'dvr', 'description' => 'Enables configuration of Distributed Virtual Routers.', 'links' => [], 'name' => 'Distributed Virtual Router' } }, :networks => { network_id => { 'id' => network_id, 'name' => 'Public', 'subnets' => [subnet_id], 'shared' => true, 'status' => 'ACTIVE', 'tenant_id' => tenant_id, 'provider:network:type' => 'vlan', 'router:external' => false, 'admin_state_up' => true, 'qos_policy_id' => qos_policy_id, 'port_security_enabled' => true }, 'e624a36d-762b-481f-9b50-4154ceb78bbb' => { 'id' => 'e624a36d-762b-481f-9b50-4154ceb78bbb', 'name' => 'network_1', 'subnets' => ['2e4ec6a4-0150-47f5-8523-e899ac03026e'], 'shared' => false, 'status' => 'ACTIVE', 'tenant_id' => 'f8b26a6032bc47718a7702233ac708b9', 'provider:network:type' => 'vlan', 'router:external' => false, 'admin_state_up' => true, 'qos_policy_id' => qos_policy_id, 'port_security_enabled' => true } }, :ports => {}, :subnets => { subnet_id => { 'id' => subnet_id, 'name' => "Public", 'network_id' => network_id, 'cidr' => "192.168.0.0/22", 'ip_version' => 4, 'gateway_ip' => Fog::Mock.random_ip, 'allocation_pools' => [], 'dns_nameservers' => [Fog::Mock.random_ip, Fog::Mock.random_ip], 'host_routes' => [Fog::Mock.random_ip], 'enable_dhcp' => true, 'tenant_id' => tenant_id, } }, :subnet_pools => {}, :floating_ips => {}, :routers => {}, :lb_pools => {}, :lb_members => {}, :lb_health_monitors => {}, :lb_vips => {}, :lbaas_loadbalancers => {}, :lbaas_listeners => {}, :lbaas_pools => {}, :lbaas_pool_members => {}, :lbaas_health_monitorss => {}, :lbaas_l7policies => {}, :lbaas_l7rules => {}, :vpn_services => {}, :ike_policies => {}, :ipsec_policies => {}, :ipsec_site_connections => {}, :rbac_policies => {}, :quota => { "subnet" => 10, "router" => 10, "port" => 50, "network" => 10, "floatingip" => 50 }, :quotas => [ { "subnet" => 10, "network" => 10, "floatingip" => 50, "tenant_id" => tenant_id, "router" => 10, "port" => 30 } ], :security_groups => {}, :security_group_rules => {}, :network_ip_availabilities => [ { "network_id" => "4cf895c9-c3d1-489e-b02e-59b5c8976809", "network_name" => "public", "subnet_ip_availability" => [ { "cidr" => "2001:db8::/64", "ip_version" => 6, "subnet_id" => "ca3f46c4-c6ff-4272-9be4-0466f84c6077", "subnet_name" => "ipv6-public-subnet", "total_ips" => 18446744073709552000, "used_ips" => 1 }, { "cidr" => "172.24.4.0/24", "ip_version" => 4, "subnet_id" => "cc02efc1-9d47-46bd-bab6-760919c836b5", "subnet_name" => "public-subnet", "total_ips" => 253, "used_ips" => 1 } ], "project_id" => "1a02cc95f1734fcc9d3c753818f03002", "tenant_id" => "1a02cc95f1734fcc9d3c753818f03002", "total_ips" => 253, "used_ips" => 2 }, { "network_id" => "6801d9c8-20e6-4b27-945d-62499f00002e", "network_name" => "private", "subnet_ip_availability" => [ { "cidr" => "10.0.0.0/24", "ip_version" => 4, "subnet_id" => "44e70d00-80a2-4fb1-ab59-6190595ceb61", "subnet_name" => "private-subnet", "total_ips" => 253, "used_ips" => 2 }, { "ip_version" => 6, "cidr" => "fdbf:ac66:9be8::/64", "subnet_id" => "a90623df-00e1-4902-a675-40674385d74c", "subnet_name" => "ipv6-private-subnet", "total_ips" => 18446744073709552000, "used_ips" => 2 } ], "project_id" => "d56d3b8dd6894a508cf41b96b522328c", "tenant_id" => "d56d3b8dd6894a508cf41b96b522328c", "total_ips" => 18446744073709552000, "used_ips" => 4 } ] } end end
new(options = {})
click to toggle source
# File lib/fog/openstack/network.rb, line 428 def initialize(options = {}) @auth_token = Fog::Mock.random_base64(64) @auth_token_expiration = (Time.now.utc + 86400).iso8601 end
reset()
click to toggle source
# File lib/fog/openstack/network.rb, line 422 def self.reset @data = nil end
Public Instance Methods
add_router_interface(_router_id, _subnet_id, _options = {})
click to toggle source
# File lib/fog/openstack/network/requests/add_router_interface.rb, line 26 def add_router_interface(_router_id, _subnet_id, _options = {}) response = Excon::Response.new response.status = 201 data = { 'status' => 'ACTIVE', 'name' => '', 'admin_state_up' => true, 'network_id' => '5307648b-e836-4658-8f1a-ff7536870c64', 'tenant_id' => '6b96ff0cb17a4b859e1e575d221683d3', 'device_owner' => 'network:router_interface', 'mac_address' => 'fa:16:3e:f7:d1:9c', 'fixed_ips' => { 'subnet_id' => 'a2f1f29d-571b-4533-907f-5803ab96ead1', 'ip_address' => '10.1.1.1' }, 'id' => '3a44f4e5-1694-493a-a1fb-393881c673a4', 'device_id' => '7177abc4-5ae9-4bb7-b0d4-89e94a4abf3b' } self.data[:routers][data['router_id']] = data response.body = {'router' => data} response end
associate_floating_ip(_floating_ip_id, port_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/associate_floating_ip.rb, line 27 def associate_floating_ip(_floating_ip_id, port_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => '00000000-0000-0000-0000-000000000000', 'router_id' => '00000000-0000-0000-0000-000000000000', 'tenant_id' => options["tenant_id"], 'floating_network_id' => options["floating_network_id"], 'fixed_ip_address' => options["fixed_ip_address"], 'floating_ip_address' => options["floating_ip_address"], 'port_id' => port_id, } self.data[:floating_ips][data['floating_ip_id']] = data response.body = {'floatingip' => data} response end
associate_lb_health_monitor(pool_id, health_monitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/associate_lb_health_monitor.rb, line 22 def associate_lb_health_monitor(pool_id, health_monitor_id) response = Excon::Response.new if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id } pool['health_monitors'] << health_monitor_id data[:lb_pools][pool_id] = pool response.body = {'health_monitor' => {}} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
create_floating_ip(floating_network_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_floating_ip.rb, line 27 def create_floating_ip(floating_network_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => floating_network_id, 'floating_network_id' => floating_network_id, 'port_id' => options[:port_id], 'tenant_id' => options[:tenant_id], 'fixed_ip_address' => options[:fixed_ip_address], 'router_id' => nil, } self.data[:floating_ips][data['id']] = data response.body = {'floatingip' => data} response end
create_ike_policy(options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_ike_policy.rb, line 29 def create_ike_policy(options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'description' => options[:description], 'tenant_id' => options[:tenant_id], 'auth_algorithm' => options[:auth_algorithm], 'encryption_algorithm' => options[:encryption_algorithm], 'pfs' => options[:pfs], 'phase1_negotiation_mode' => options[:phase1_negotiation_mode], 'lifetime' => options[:lifetime], 'ike_version' => options[:ike_version] } self.data[:ike_policies][data['id']] = data response.body = {'ikepolicy' => data} response end
create_ipsec_policy(options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_ipsec_policy.rb, line 29 def create_ipsec_policy(options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'description' => options[:description], 'tenant_id' => options[:tenant_id], 'auth_algorithm' => options[:auth_algorithm], 'encryption_algorithm' => options[:encryption_algorithm], 'pfs' => options[:pfs], 'transform_protocol' => options[:transform_protocol], 'lifetime' => options[:lifetime], 'encapsulation_mode' => options[:encapsulation_mode] } self.data[:ipsec_policies][data['id']] = data response.body = {'ipsecpolicy' => data} response end
create_ipsec_site_connection(vpn_service_id, ike_policy_id, ipsec_policy_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_ipsec_site_connection.rb, line 32 def create_ipsec_site_connection(vpn_service_id, ike_policy_id, ipsec_policy_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'description' => options[:description], 'status' => 'ACTIVE', 'tenant_id' => options[:tenant_id], 'admin_state_up' => options[:admin_state_up], 'psk' => options[:psk], 'initiator' => options[:initiator], 'auth_mode' => "psk", 'peer_cidrs' => options[:peer_cidrs], 'mtu' => options[:mtu], 'peer_ep_group_id' => Fog::Mock.random_numbers(6).to_s, 'ikepolicy_id' => ike_policy_id, 'vpnservice_id' => vpn_service_id, 'dpd' => options[:dpd], 'route_mode' => "static", 'ipsecpolicy_id' => ipsec_policy_id, 'local_ep_group_id' => Fog::Mock.random_numbers(6).to_s, 'peer_address' => options[:peer_address], 'peer_id' => options[:peer_id] } self.data[:ipsec_site_connections][data['id']] = data response.body = {'ipsec_site_connection' => data} response end
create_lb_health_monitor(type, delay, timeout, max_retries, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lb_health_monitor.rb, line 30 def create_lb_health_monitor(type, delay, timeout, max_retries, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'type' => type, 'delay' => delay, 'timeout' => timeout, 'max_retries' => max_retries, 'http_method' => options[:http_method], 'url_path' => options[:url_path], 'expected_codes' => options[:expected_codes], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], } self.data[:lb_health_monitors][data['id']] = data response.body = {'health_monitor' => data} response end
create_lb_member(pool_id, address, protocol_port, weight, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lb_member.rb, line 30 def create_lb_member(pool_id, address, protocol_port, weight, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'pool_id' => pool_id, 'address' => address, 'protocol_port' => protocol_port, 'weight' => weight, 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], } self.data[:lb_members][data['id']] = data response.body = {'member' => data} response end
create_lb_pool(subnet_id, protocol, lb_method, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lb_pool.rb, line 29 def create_lb_pool(subnet_id, protocol, lb_method, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'subnet_id' => subnet_id, 'protocol' => protocol, 'lb_method' => lb_method, 'name' => options[:name], 'description' => options[:description], 'health_monitors' => [], 'members' => [], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'vip_id' => nil, 'tenant_id' => options[:tenant_id], 'active_connections' => nil, 'bytes_in' => nil, 'bytes_out' => nil, 'total_connections' => nil } self.data[:lb_pools][data['id']] = data response.body = {'pool' => data} response end
create_lb_vip(subnet_id, pool_id, protocol, protocol_port, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lb_vip.rb, line 31 def create_lb_vip(subnet_id, pool_id, protocol, protocol_port, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'subnet_id' => subnet_id, 'pool_id' => pool_id, 'protocol' => protocol, 'protocol_port' => protocol_port, 'name' => options[:name], 'description' => options[:description], 'address' => options[:address], 'port_id' => Fog::Mock.random_numbers(6).to_s, 'session_persistence' => options[:session_persistence], 'connection_limit' => options[:connection_limit], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], } self.data[:lb_vips][data['id']] = data response.body = {'vip' => data} response end
create_lbaas_healthmonitor(type, delay, timeout, max_retries, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_healthmonitor.rb, line 31 def create_lbaas_healthmonitor(type, delay, timeout, max_retries, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'type' => type, 'delay' => delay, 'timeout' => timeout, 'max_retries' => max_retries, 'http_method' => options[:http_method], 'url_path' => options[:url_path], 'expected_codes' => options[:expected_codes], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], 'name' => options[:name], 'pools' => [{ 'id'=> Fog::Mock.random_numbers(6).to_s}] } self.data[:lbaas_healthmonitors][data['id']] = data response.body = {'healthmonitor' => data} response end
create_lbaas_l7policy(listener_id, action, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_l7policy.rb, line 28 def create_lbaas_l7policy(listener_id, action, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'listener_id' => listener_id, 'action' => action, 'position' => options[:position], 'tenant_id' => options[:tenant_id], 'name' => options[:name], 'description' => options[:description], 'redirect_pool_id' => options[:redirect_pool_id], 'redirect_url' => options[:redirect_url] } self.data[:lbaas_l7policies][data['id']] = data response.body = {'l7policy' => data} response end
create_lbaas_l7rule(l7policy_id, type, compare_type, value, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_l7rule.rb, line 29 def create_lbaas_l7rule(l7policy_id, type, compare_type, value, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'type' => type, 'compare_type' => compare_type, 'value' => value, 'tenant_id' => options[:tenant_id], 'key' => options[:key], 'invert' => options[:invert], 'l7policy_id' => l7policy_id } self.data[:lbaas_l7rules][data['id']] = data response.body = {'rule' => data} response end
create_lbaas_listener(loadbalancer_id, protocol, protocol_port, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_listener.rb, line 30 def create_lbaas_listener(loadbalancer_id, protocol, protocol_port, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'loadbalancers' => [{'id' => loadbalancer_id }], 'protocol' => protocol, 'protocol_port' => protocol_port, 'name' => options[:name], 'description' => options[:description], 'default_pool_id' => options[:default_pool_id], 'connection_limit' => options[:connection_limit], 'default_tls_container_ref' => options[:default_tls_container_ref], 'sni_container_refs' => options[:sni_container_refs], 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id] } self.data[:lbaas_listener][data['id']] = data response.body = {'listener' => data} response end
create_lbaas_loadbalancer(vip_subnet_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_loadbalancer.rb, line 26 def create_lbaas_loadbalancer(vip_subnet_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'subnet_id' => vip_subnet_id, 'name' => options[:name], 'description' => options[:description], 'vip_address' => options[:vip_address], 'vip_port_id'=> Fog::Mock.random_numbers(6).to_s, 'vip_subnet_id'=> vip_subnet_id, 'flavor' => options[:flavor], 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], 'listeners'=> [{ 'id'=> Fog::Mock.random_numbers(6).to_s}], 'operating_status'=> 'ONLINE', 'provider'=> 'lbprovider', 'provisioning_status'=> 'ACTIVE' } self.data[:lbaas_loadbalancer][data['id']] = data response.body = {'loadbalancer' => data} response end
create_lbaas_pool(listener_id, protocol, lb_algorithm, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_pool.rb, line 29 def create_lbaas_pool(listener_id, protocol, lb_algorithm, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'protocol' => protocol, 'lb_algorithm' => lb_algorithm, 'name' => options[:name], 'description' => options[:description], 'healthmonitor_id' => Fog::Mock.random_numbers(6).to_s, 'members' => [Fog::Mock.random_numbers(6).to_s], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], 'listeners' => [ 'id' => listener_id ], 'session_persistence' => {} } self.data[:lbaas_pools][data['id']] = data response.body = {'pool' => data} response end
create_lbaas_pool_member(pool_id, address, protocol_port, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_lbaas_pool_member.rb, line 28 def create_lbaas_pool_member(pool_id, address, protocol_port, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'pool_id' => pool_id, 'address' => address, 'protocol_port' => protocol_port, 'weight' => options[:weight], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], 'subnet_id' => ptions[:subnet_id] } self.data[:lb_members][data['id']] = data response.body = {'member' => data} response end
create_network(options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_network.rb, line 66 def create_network(options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'shared' => options[:shared] || false, 'subnets' => [], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up] || false, 'tenant_id' => options[:tenant_id], 'qos_policy_id' => options[:qos_policy_id], 'port_security_enabled' => options[:port_security_enabled] || false } data.merge!(Fog::OpenStack::Network::Real.create(options)) self.data[:networks][data['id']] = data response.body = {'network' => data} response end
create_port(network_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_port.rb, line 29 def create_port(network_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'network_id' => network_id, 'fixed_ips' => options[:fixed_ips], 'mac_address' => options[:mac_address], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'device_owner' => options[:device_owner], 'device_id' => options[:device_id], 'tenant_id' => options[:tenant_id], 'security_groups' => options[:security_groups], 'allowed_address_pairs' => options[:allowed_address_pairs], } self.data[:ports][data['id']] = data response.body = {'port' => data} response end
create_rbac_policy(options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_rbac_policy.rb, line 23 def create_rbac_policy(options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'object_type' => options[:object_type], 'object_id' => options[:object_id], 'tenant_id' => options[:tenant_id], 'target_tenant' => options[:target_tenant], 'action' => options[:action] } self.data[:rbac_policies][data['id']] = data response.body = {'rbac_policy' => data} response end
create_router(name, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_router.rb, line 47 def create_router(name, options = {}) response = Excon::Response.new response.status = 201 # remove this in a future egi = options[:external_gateway_info] if egi && egi.kind_of?(Fog::OpenStack::Network::Network) Fog::Logger.deprecation "Passing a model objects into options[:external_gateway_info] is deprecated. \ Please pass external external gateway as follows options[:external_gateway_info] = { :network_id => NETWORK_ID }]" egi = {:network_id => egi.id} end data = { 'router' => { :id => Fog::Mock.random_numbers(6).to_s, :status => options[:status] || 'ACTIVE', :external_gateway_info => egi, :name => name, :admin_state_up => options[:admin_state_up], :tenant_id => '6b96ff0cb17a4b859e1e575d221683d3' } } self.data[:routers][data['router'][:id]] = data['router'] response.body = data response end
create_security_group(options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_security_group.rb, line 48 def create_security_group(options = {}) # Spaces are NOT removed from name and description, as in case of compute sec groups tenant_id = Fog::Mock.random_numbers(14).to_s sec_group_id = Fog::UUID.uuid response = Excon::Response.new response.status = 201 # by default every security group will come setup with an egress rule to "allow all out" data = { "security_group_rules" => [ {"remote_group_id" => nil, "direction" => "egress", "remote_ip_prefix" => nil, "protocol" => nil, "ethertype" => "IPv4", "tenant_id" => tenant_id, "port_range_max" => nil, "port_range_min" => nil, "id" => Fog::UUID.uuid, "security_group_id" => sec_group_id}, {"remote_group_id" => nil, "direction" => "egress", "remote_ip_prefix" => nil, "protocol" => nil, "ethertype" => "IPv6", "tenant_id" => tenant_id, "port_range_max" => nil, "port_range_min" => nil, "id" => Fog::UUID.uuid, "security_group_id" => sec_group_id} ], "id" => sec_group_id, "tenant_id" => tenant_id, "name" => options[:name] || "", "description" => options[:description] || "" } self.data[:security_groups][data["id"]] = data response.body = {"security_group" => data} response end
create_security_group_rule(security_group_id, direction, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_security_group_rule.rb, line 57 def create_security_group_rule(security_group_id, direction, options = {}) response = Excon::Response.new data = { "id" => Fog::UUID.uuid, "remote_group_id" => options[:remote_group_id], "direction" => direction, "remote_ip_prefix" => options[:remote_ip_prefix], "protocol" => options[:protocol], "ethertype" => options[:ethertype] || "IPv4", "tenant_id" => options[:tenant_id] || Fog::Mock.random_numbers(14).to_s, "port_range_max" => options[:port_range_max], "port_range_min" => options[:port_range_min], "security_group_id" => security_group_id } self.data[:security_group_rules][data["id"]] = data response.status = 201 response.body = {"security_group_rule" => data} response end
create_subnet(network_id, cidr, ip_version, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_subnet.rb, line 31 def create_subnet(network_id, cidr, ip_version, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => options[:name], 'network_id' => network_id, 'cidr' => cidr, 'ip_version' => ip_version, 'gateway_ip' => options[:gateway_ip], 'allocation_pools' => options[:allocation_pools], 'dns_nameservers' => options[:dns_nameservers], 'host_routes' => options[:host_routes], 'enable_dhcp' => options[:enable_dhcp], 'tenant_id' => options[:tenant_id] } self.data[:subnets][data['id']] = data response.body = {'subnet' => data} response end
create_subnet_pool(name, prefixes, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_subnet_pool.rb, line 29 def create_subnet_pool(name, prefixes, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'name' => name, 'prefixes' => prefixes, 'description' => options[:description], 'min_prefixlen' => options[:min_prefixlen] || 64, 'max_prefixlen' => options[:max_prefixlen] || 64, 'default_prefixlen' => options[:default_prefixlen] || 64, 'address_scope_id' => options[:address_scope_id], 'default_quota' => options[:default_quota], 'ip_version' => options[:ip_version] || 4, 'shared' => options[:shared].nil? ? false : options[:shared], 'is_default' => options[:is_default].nil? ? false : options[:is_default], 'created_at' => Time.now.to_s, 'updated_at' => Time.now.to_s, 'tenant_id' => Fog::Mock.random_hex(8).to_s } self.data[:subnet_pools][data['id']] = data response.body = {'subnetpool' => data} response end
create_vpn_service(subnet_id, router_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/create_vpn_service.rb, line 28 def create_vpn_service(subnet_id, router_id, options = {}) response = Excon::Response.new response.status = 201 data = { 'id' => Fog::Mock.random_numbers(6).to_s, 'subnet_id' => subnet_id, 'router_id' => router_id, 'name' => options[:name], 'description' => options[:description], 'status' => 'ACTIVE', 'admin_state_up' => options[:admin_state_up], 'tenant_id' => options[:tenant_id], 'external_v4_ip' => '1.2.3.4', 'external_v6_ip' => '::1' } self.data[:vpn_services][data['id']] = data response.body = {'vpnservice' => data} response end
data()
click to toggle source
# File lib/fog/openstack/network.rb, line 433 def data self.class.data["#{@openstack_username}-#{@openstack_tenant}"] end
delete_floating_ip(floating_ip_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_floating_ip.rb, line 15 def delete_floating_ip(floating_ip_id) response = Excon::Response.new if list_floating_ips.body['floatingips'].map { |r| r['id'] }.include? floating_ip_id data[:floating_ips].delete(floating_ip_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_ike_policy(ike_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_ike_policy.rb, line 15 def delete_ike_policy(ike_policy_id) response = Excon::Response.new if list_ike_policies.body['ikepolicies'].collect { |r| r['id'] }.include? ike_policy_id data[:ike_policies].delete(ike_policy_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_ipsec_policy(ipsec_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_ipsec_policy.rb, line 15 def delete_ipsec_policy(ipsec_policy_id) response = Excon::Response.new if list_ipsec_policies.body['ipsecpolicies'].collect { |r| r['id'] }.include? ipsec_policy_id data[:ipsec_policies].delete(ipsec_policy_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_ipsec_site_connection(ipsec_site_connection_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_ipsec_site_connection.rb, line 15 def delete_ipsec_site_connection(ipsec_site_connection_id) response = Excon::Response.new ip_site_connections = list_ipsec_site_connections.body['ipsec_site_connections'] if ip_site_connections.collect { |r| r['id'] }.include? ipsec_site_connection_id data[:ipsec_site_connections].delete(ipsec_site_connection_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lb_health_monitor(health_monitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lb_health_monitor.rb, line 15 def delete_lb_health_monitor(health_monitor_id) response = Excon::Response.new if list_lb_health_monitors.body['health_monitors'].map { |r| r['id'] }.include? health_monitor_id data[:lb_health_monitors].delete(health_monitor_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lb_member(member_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lb_member.rb, line 15 def delete_lb_member(member_id) response = Excon::Response.new if list_lb_members.body['members'].map { |r| r['id'] }.include? member_id data[:lb_members].delete(member_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lb_pool(pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lb_pool.rb, line 15 def delete_lb_pool(pool_id) response = Excon::Response.new if list_lb_pools.body['pools'].map { |r| r['id'] }.include? pool_id data[:lb_pools].delete(pool_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lb_vip(vip_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lb_vip.rb, line 15 def delete_lb_vip(vip_id) response = Excon::Response.new if list_lb_vips.body['vips'].map { |r| r['id'] }.include? vip_id data[:lb_vips].delete(vip_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_healthmonitor(healthmonitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_healthmonitor.rb, line 15 def delete_lbaas_healthmonitor(healthmonitor_id) response = Excon::Response.new if list_lbaas_healthmonitors.body['healthmonitors'].map { |r| r['id'] }.include? healthmonitor_id data[:lbaas_healthmonitors].delete(healthmonitor_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_l7policy(l7policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_l7policy.rb, line 15 def delete_lbaas_l7policy(l7policy_id) response = Excon::Response.new if list_lbaas_l7policies.body['l7policies'].map { |r| r['id'] }.include? l7policy_id data[:lbaas_l7policies].delete(l7policy_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_l7rule(l7policy_id, l7rule_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_l7rule.rb, line 15 def delete_lbaas_l7rule(l7policy_id, l7rule_id) response = Excon::Response.new if list_lbaas_l7rules.body['l7rules'].map { |r| r['id'] }.include? l7rule_id data[:lbaas_l7rules].delete(l7rule_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_listener(listener_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_listener.rb, line 15 def delete_lbaas_listener(listener_id) response = Excon::Response.new if list_lbaas_listeners.body['listsners'].map { |r| r['id'] }.include? listener_id data[:lbaas_listeners].delete(listener_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_loadbalancer(loadbalancer_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_loadbalancer.rb, line 15 def delete_lbaas_loadbalancer(loadbalancer_id) response = Excon::Response.new if list_lbaas_loadbalancers.body['loadbalancers'].map { |r| r['id'] }.include? loadbalancer_id data[:lbaas_loadbalancers].delete(loadbalancer_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_pool(pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_pool.rb, line 15 def delete_lbaas_pool(pool_id) response = Excon::Response.new if list_lb_pools.body['pools'].map { |r| r['id'] }.include? pool_id data[:lb_pools].delete(pool_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_lbaas_pool_member(pool_id, member_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_lbaas_pool_member.rb, line 15 def delete_lbaas_pool_member(pool_id, member_id) response = Excon::Response.new if list_lbaas_pool_members(pool_id).body['members'].map { |r| r['id'] }.include? member_id data[:members].delete(member_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_network(network_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_network.rb, line 15 def delete_network(network_id) response = Excon::Response.new if list_networks.body['networks'].map { |r| r['id'] }.include? network_id data[:networks].delete(network_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_port(port_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_port.rb, line 15 def delete_port(port_id) response = Excon::Response.new if list_ports.body['ports'].map { |r| r['id'] }.include? port_id data[:ports].delete(port_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_quota(_tenant_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_quota.rb, line 15 def delete_quota(_tenant_id) response = Excon::Response.new response.status = 204 response end
delete_rbac_policy(rbac_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_rbac_policy.rb, line 15 def delete_rbac_policy(rbac_policy_id) response = Excon::Response.new if list_rbac_policies.body['rbac_policies'].collect { |r| r['id'] }.include? rbac_policy_id data[:rbac_policies].delete(rbac_policy_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_router(router_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_router.rb, line 15 def delete_router(router_id) response = Excon::Response.new if list_routers.body['routers'].find { |r| r[:id] == router_id } data[:routers].delete(router_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_security_group(security_group_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_security_group.rb, line 19 def delete_security_group(security_group_id) response = Excon::Response.new if data[:security_groups][security_group_id] data[:security_groups].delete(security_group_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_security_group_rule(security_group_rule_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_security_group_rule.rb, line 19 def delete_security_group_rule(security_group_rule_id) response = Excon::Response.new if data[:security_group_rules][security_group_rule_id] data[:security_group_rules].delete(security_group_rule_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_subnet(subnet_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_subnet.rb, line 15 def delete_subnet(subnet_id) response = Excon::Response.new if list_subnets.body['subnets'].map { |r| r['id'] }.include? subnet_id data[:subnets].delete(subnet_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_subnet_pool(subnet_pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_subnet_pool.rb, line 15 def delete_subnet_pool(subnet_pool_id) response = Excon::Response.new if list_subnet_pools.body['subnetpools'].map { |r| r['id'] }.include? subnet_pool_id data[:subnet_pools].delete(subnet_pool_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
delete_vpn_service(vpn_service_id)
click to toggle source
# File lib/fog/openstack/network/requests/delete_vpn_service.rb, line 15 def delete_vpn_service(vpn_service_id) response = Excon::Response.new if list_vpn_services.body['vpnservices'].collect { |r| r['id'] }.include? vpn_service_id data[:vpn_services].delete(vpn_service_id) response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
disassociate_floating_ip(_floating_ip_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/disassociate_floating_ip.rb, line 27 def disassociate_floating_ip(_floating_ip_id, options = {}) response = Excon::Response.new response.status = 200 data = { 'id' => '00000000-0000-0000-0000-000000000000', 'router_id' => nil, 'tenant_id' => options["tenant_id"], 'floating_network_id' => options["floating_network_id"], 'fixed_ip_address' => nil, 'floating_ip_address' => options["floating_ip_address"], 'port_id' => options["port_id"], } self.data[:floating_ips][data['floating_ip_id']] = data response.body = {'floatingip' => data} response end
disassociate_lb_health_monitor(pool_id, health_monitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/disassociate_lb_health_monitor.rb, line 15 def disassociate_lb_health_monitor(pool_id, health_monitor_id) response = Excon::Response.new if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id } pool['health_monitors'].delete(health_monitor_id) data[:lb_pools][pool_id] = pool response.status = 204 response else raise Fog::OpenStack::Network::NotFound end end
get_extension(name)
click to toggle source
# File lib/fog/openstack/network/requests/get_extension.rb, line 15 def get_extension(name) response = Excon::Response.new if data = self.data[:extensions][name] response.status = 200 response.body = {'extension' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_floating_ip(floating_ip_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_floating_ip.rb, line 15 def get_floating_ip(floating_ip_id) response = Excon::Response.new if data = self.data[:floating_ips][floating_ip_id] response.status = 200 response.body = { "floatingip" => { "id" => "00000000-0000-0000-0000-000000000000", # changed # "floating_ip_id" => floating_ip_id, "port_id" => data["port_id"], "tenant_id" => data["tenant_id"], "fixed_ip_address" => data["fixed_ip_address"], "router_id" => "00000000-0000-0000-0000-000000000000", "floating_ip_address" => data["floating_ip_address"], } } response else raise Fog::OpenStack::Network::NotFound end end
get_ike_policy(ike_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_ike_policy.rb, line 15 def get_ike_policy(ike_policy_id) response = Excon::Response.new if data = self.data[:ike_policies][ike_policy_id] response.status = 200 response.body = {'ikepolicy' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_ipsec_policy(ipsec_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_ipsec_policy.rb, line 15 def get_ipsec_policy(ipsec_policy_id) response = Excon::Response.new if data = self.data[:ipsec_policies][ipsec_policy_id] response.status = 200 response.body = {'ipsecpolicy' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_ipsec_site_connection(ipsec_site_connection_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_ipsec_site_connection.rb, line 15 def get_ipsec_site_connection(ipsec_site_connection_id) response = Excon::Response.new if data = self.data[:ipsec_site_connections][ipsec_site_connection_id] response.status = 200 response.body = {'ipsec_site_connection' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lb_health_monitor(health_monitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lb_health_monitor.rb, line 15 def get_lb_health_monitor(health_monitor_id) response = Excon::Response.new if data = self.data[:lb_health_monitors][health_monitor_id] response.status = 200 response.body = {'health_monitor' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lb_member(member_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lb_member.rb, line 15 def get_lb_member(member_id) response = Excon::Response.new if data = self.data[:lb_members][member_id] response.status = 200 response.body = {'member' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lb_pool(pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lb_pool.rb, line 15 def get_lb_pool(pool_id) response = Excon::Response.new if data = self.data[:lb_pools][pool_id] response.status = 200 response.body = {'pool' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lb_pool_stats(pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lb_pool_stats.rb, line 15 def get_lb_pool_stats(pool_id) response = Excon::Response.new if data = self.data[:lb_pools][pool_id] stats = {} stats["active_connections"] = 0 stats["bytes_in"] = 0 stats["bytes_out"] = 0 stats["total_connections"] = 0 response.status = 200 response.body = {'stats' => stats} response else raise Fog::OpenStack::Network::NotFound end end
get_lb_vip(vip_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lb_vip.rb, line 15 def get_lb_vip(vip_id) response = Excon::Response.new if data = self.data[:lb_vips][vip_id] response.status = 200 response.body = {'vip' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_healthmonitor(healthmonitor_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_healthmonitor.rb, line 15 def get_lbaas_healthmonitor(healthmonitor_id) response = Excon::Response.new if data = self.data[:lbaas_healthmonitors][healthmonitor_id] response.status = 200 response.body = {'healthmonitor' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_l7policy(l7policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_l7policy.rb, line 15 def get_lbaas_l7policy(l7policy_id) response = Excon::Response.new if data = self.data[:lbaas_l7policies][l7policy_id] response.status = 200 response.body = {'l7policy' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_l7rule(l7policy_id, l7rule_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_l7rule.rb, line 15 def get_lbaas_l7rule(l7policy_id, l7rule_id) response = Excon::Response.new if data = self.data[:lbaas_l7rules][l7rule_id] response.status = 200 response.body = {'rule' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_listener(listener_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_listener.rb, line 15 def get_lbaas_listener(listener_id) response = Excon::Response.new if data = self.data[:lbaas_listeners][listener_id] response.status = 200 response.body = {'listener' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_loadbalancer(loadbalancer_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_loadbalancer.rb, line 15 def get_lbaas_loadbalancer(loadbalancer_id) response = Excon::Response.new if data = self.data[:lbaas_loadbalancer][loadbalancer_id] response.status = 200 response.body = {'loadbalancer' => data[:lbaas_loadbalancer]} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_pool(pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_pool.rb, line 15 def get_lbaas_pool(pool_id) response = Excon::Response.new if data = self.data[:lbaas_pools][pool_id] response.status = 200 response.body = {'pool' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_lbaas_pool_member(pool_id, member_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_lbaas_pool_member.rb, line 15 def get_lbaas_pool_member(pool_id, member_id) response = Excon::Response.new if data = self.data[:lbaas_pool_members][member_id] response.status = 200 response.body = {'member' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_network(network_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_network.rb, line 15 def get_network(network_id) response = Excon::Response.new if data = self.data[:networks][network_id] response.status = 200 response.body = {'network' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_network_ip_availability(network_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_network_ip_availability.rb, line 15 def get_network_ip_availability(network_id) response = Excon::Response.new if data = self.data[:network_ip_availabilities].first response.status = 200 response.body = {'network_ip_availability' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_port(port_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_port.rb, line 15 def get_port(port_id) response = Excon::Response.new if data = self.data[:ports][port_id] response.status = 200 response.body = { 'port' => { 'id' => '5c81d975-5fea-4674-9c1f-b8aa10bf9a79', 'name' => 'port_1', 'network_id' => 'e624a36d-762b-481f-9b50-4154ceb78bbb', 'fixed_ips' => [ { 'ip_address' => '10.2.2.2', 'subnet_id' => '2e4ec6a4-0150-47f5-8523-e899ac03026e', } ], 'mac_address' => 'fa:16:3e:62:91:7f', 'status' => 'ACTIVE', 'admin_state_up' => true, 'device_id' => 'dhcp724fc160-2b2e-597e-b9ed-7f65313cd73f-e624a36d-762b-481f-9b50-4154ceb78bbb', 'device_owner' => 'network:dhcp', 'tenant_id' => 'f8b26a6032bc47718a7702233ac708b9', 'security_groups' => ['3ddde803-e550-4737-b5de-0862401dc834'], 'allowed_address_pairs' => [ 'ip_address' => '10.1.1.1', 'mac_address' => 'fa:16:3e:3d:2a:cc' ] } } response else raise Fog::OpenStack::Network::NotFound end end
get_quota(_tenant_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_quota.rb, line 15 def get_quota(_tenant_id) response = Excon::Response.new response.status = 200 response.body = { 'quota' => (data[:quota_updated] || data[:quota]) } response end
get_quotas()
click to toggle source
# File lib/fog/openstack/network/requests/get_quotas.rb, line 15 def get_quotas response = Excon::Response.new response.status = 200 response.body = { 'quotas' => data[:quotas] } response end
get_rbac_policy(rbac_policy_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_rbac_policy.rb, line 15 def get_rbac_policy(rbac_policy_id) response = Excon::Response.new if data = self.data[:rbac_policies][rbac_policy_id] response.status = 200 response.body = {'rbac_policy' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_router(router_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_router.rb, line 15 def get_router(router_id) response = Excon::Response.new if data = (self.data[:routers].find { |id, _value| id == router_id }) response.status = 200 response.body = { 'router' => data[1], } response else raise Fog::OpenStack::Network::NotFound end end
get_security_group(security_group_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_security_group.rb, line 39 def get_security_group(security_group_id) response = Excon::Response.new if sec_group = data[:security_groups][security_group_id] response.status = 200 response.body = {"security_group" => sec_group} response else raise Fog::OpenStack::Network::NotFound end end
get_security_group_rule(security_group_rule_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_security_group_rule.rb, line 34 def get_security_group_rule(security_group_rule_id) response = Excon::Response.new if sec_group_rule = data[:security_group_rules][security_group_rule_id] response.status = 200 response.body = {"security_group_rule" => sec_group_rule} response else raise Fog::OpenStack::Network::NotFound end end
get_subnet(subnet_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_subnet.rb, line 15 def get_subnet(subnet_id) response = Excon::Response.new if data = self.data[:subnets][subnet_id] response.status = 200 response.body = { "subnet" => { "id" => "2e4ec6a4-0150-47f5-8523-e899ac03026e", "name" => "subnet_1", "network_id" => "e624a36d-762b-481f-9b50-4154ceb78bbb", "cidr" => "10.2.2.0/24", "ip_version" => 4, "gateway_ip" => "10.2.2.1", "allocation_pools" => [ { "start" => "10.2.2.2", "end" => "10.2.2.254" } ], "dns_nameservers" => [], "host_routes" => [], "enable_dhcp" => true, "tenant_id" => "f8b26a6032bc47718a7702233ac708b9", } } response else raise Fog::OpenStack::Network::NotFound end end
get_subnet_pool(subnet_pool_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_subnet_pool.rb, line 15 def get_subnet_pool(subnet_pool_id) data = self.data[:subnet_pools][subnet_pool_id] if data response = Excon::Response.new response.status = 200 response.body = {'subnetpool' => data} response else raise Fog::OpenStack::Network::NotFound end end
get_vpn_service(vpn_service_id)
click to toggle source
# File lib/fog/openstack/network/requests/get_vpn_service.rb, line 15 def get_vpn_service(vpn_service_id) response = Excon::Response.new if data = self.data[:vpn_services][vpn_service_id] response.status = 200 response.body = {'vpnservice' => data} response else raise Fog::OpenStack::Network::NotFound end end
list_extensions(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_extensions.rb, line 16 def list_extensions(_filters = {}) Excon::Response.new( :body => {'extensions' => data[:extensions].values}, :status => 200 ) end
list_floating_ips(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_floating_ips.rb, line 16 def list_floating_ips(_filters = {}) Excon::Response.new( :body => {'floatingips' => data[:floating_ips].values}, :status => 200 ) end
list_ike_policies(*)
click to toggle source
# File lib/fog/openstack/network/requests/list_ike_policies.rb, line 16 def list_ike_policies(*) Excon::Response.new( :body => {'ikepolicies' => data[:ike_policies].values}, :status => 200 ) end
list_ipsec_policies(*)
click to toggle source
# File lib/fog/openstack/network/requests/list_ipsec_policies.rb, line 16 def list_ipsec_policies(*) Excon::Response.new( :body => {'ipsecpolicies' => data[:ipsec_policies].values}, :status => 200 ) end
list_ipsec_site_connections(*)
click to toggle source
# File lib/fog/openstack/network/requests/list_ipsec_site_connections.rb, line 16 def list_ipsec_site_connections(*) Excon::Response.new( :body => {'ipsec_site_connections' => data[:ipsec_site_connections].values}, :status => 200 ) end
list_lb_health_monitors(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lb_health_monitors.rb, line 16 def list_lb_health_monitors(_filters = {}) Excon::Response.new( :body => {'health_monitors' => data[:lb_health_monitors].values}, :status => 200 ) end
list_lb_members(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lb_members.rb, line 16 def list_lb_members(_filters = {}) Excon::Response.new( :body => {'members' => data[:lb_members].values}, :status => 200 ) end
list_lb_pools(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lb_pools.rb, line 16 def list_lb_pools(_filters = {}) Excon::Response.new( :body => {'pools' => data[:lb_pools].values}, :status => 200 ) end
list_lb_vips(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lb_vips.rb, line 16 def list_lb_vips(_filters = {}) Excon::Response.new( :body => {'vips' => data[:lb_vips].values}, :status => 200 ) end
list_lbaas_healthmonitors(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_healthmonitors.rb, line 16 def list_lbaas_healthmonitors(_filters = {}) Excon::Response.new( :body => {'healthmonitors' => data[:lbaas_healthmonitors].values}, :status => 200 ) end
list_lbaas_l7policies(filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_l7policies.rb, line 16 def list_lbaas_l7policies(filters = {}) Excon::Response.new( :body => {'l7policies' => data[:lbaas_l7policies].values}, :status => 200 ) end
list_lbaas_l7rules(l7policy_id, filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_l7rules.rb, line 16 def list_lbaas_l7rules(l7policy_id, filters = {}) Excon::Response.new( :body => {'rules' => data[:lbaas_l7rules].values}, :status => 200 ) end
list_lbaas_listeners(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_listeners.rb, line 16 def list_lbaas_listeners(_filters = {}) Excon::Response.new( :body => {'listeners' => data[:lbaas_listeners].values}, :status => 200 ) end
list_lbaas_loadbalancers(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_loadbalancers.rb, line 16 def list_lbaas_loadbalancers(_filters = {}) Excon::Response.new( :body => {'loadbalancers' => [data[:lbaas_loadbalancer]]}, :status => 200 ) end
list_lbaas_pool_members(pool_id, _filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_pool_members.rb, line 16 def list_lbaas_pool_members(pool_id, _filters = {}) Excon::Response.new( :body => {'members' => data[:lbaas_pool_members].values}, :status => 200 ) end
list_lbaas_pools(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_lbaas_pools.rb, line 16 def list_lbaas_pools(_filters = {}) Excon::Response.new( :body => {'pools' => data[:lbaas_pools].values}, :status => 200 ) end
list_network_ip_availabilities()
click to toggle source
# File lib/fog/openstack/network/requests/list_network_ip_availabilities.rb, line 15 def list_network_ip_availabilities response = Excon::Response.new if data = self.data[:network_ip_availabilities] response.status = 200 response.body = {'network_ip_availabilities' => data} response else raise Fog::OpenStack::Network::NotFound end end
list_networks(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_networks.rb, line 16 def list_networks(_filters = {}) Excon::Response.new( :body => {'networks' => data[:networks].values}, :status => 200 ) end
list_ports(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_ports.rb, line 16 def list_ports(_filters = {}) Excon::Response.new( :body => {'ports' => data[:ports].values}, :status => 200 ) end
list_rbac_policies(*)
click to toggle source
# File lib/fog/openstack/network/requests/list_rbac_policies.rb, line 16 def list_rbac_policies(*) Excon::Response.new( :body => {'rbac_policies' => data[:rbac_policies].values}, :status => 200 ) end
list_routers(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_routers.rb, line 16 def list_routers(_filters = {}) Excon::Response.new( :body => {'routers' => data[:routers].values}, :status => 200 ) end
list_security_group_rules(_options = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_security_group_rules.rb, line 35 def list_security_group_rules(_options = {}) response = Excon::Response.new sec_group_rules = [] sec_group_rules = data[:security_group_rules].values unless data[:security_group_rules].nil? response.status = 200 response.body = {'security_group_rules' => sec_group_rules} response end
list_security_groups(_options = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_security_groups.rb, line 40 def list_security_groups(_options = {}) response = Excon::Response.new sec_groups = [] sec_groups = data[:security_groups].values unless data[:security_groups].nil? response.status = 200 response.body = {'security_groups' => sec_groups} response end
list_subnet_pools(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_subnet_pools.rb, line 16 def list_subnet_pools(_filters = {}) Excon::Response.new( :body => {'subnetpools' => data[:subnet_pools].values}, :status => 200 ) end
list_subnets(_filters = {})
click to toggle source
# File lib/fog/openstack/network/requests/list_subnets.rb, line 16 def list_subnets(_filters = {}) Excon::Response.new( :body => {'subnets' => data[:subnets].values}, :status => 200 ) end
list_vpn_services(*)
click to toggle source
# File lib/fog/openstack/network/requests/list_vpn_services.rb, line 16 def list_vpn_services(*) Excon::Response.new( :body => {'vpnservices' => data[:vpn_services].values}, :status => 200 ) end
remove_router_interface(_router_id, _subnet_id, _options = {})
click to toggle source
# File lib/fog/openstack/network/requests/remove_router_interface.rb, line 20 def remove_router_interface(_router_id, _subnet_id, _options = {}) response = Excon::Response.new response.status = 201 data = { 'subnet_id' => 'a2f1f29d-571b-4533-907f-5803ab96ead1' } self.data[:routers][data['router_id']] = data response.body = {'router' => data} response end
reset_data()
click to toggle source
# File lib/fog/openstack/network.rb, line 437 def reset_data self.class.data.delete("#{@openstack_username}-#{@openstack_tenant}") end
set_tenant(_tenant)
click to toggle source
# File lib/fog/openstack/network/requests/set_tenant.rb, line 13 def set_tenant(_tenant) true end
update_ike_policy(ike_policy_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_ike_policy.rb, line 26 def update_ike_policy(ike_policy_id, options = {}) response = Excon::Response.new if ike_policy = list_ike_policies.body['ikepolicies'].detect { |instance| instance['id'] == ike_policy_id } ike_policy['name'] = options[:name] ike_policy['description'] = options[:description] ike_policy['tenant_id'] = options[:tenant_id] ike_policy['auth_algorithm'] = options[:auth_algorithm] ike_policy['encryption_algorithm'] = options[:encryption_algorithm] ike_policy['pfs'] = options[:pfs] ike_policy['phase1_negotiation_mode'] = options[:phase1_negotiation_mode] ike_policy['lifetime'] = options[:lifetime] ike_policy['ike_version'] = options[:ike_version] response.body = {'ikepolicy' => ike_policy} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_ipsec_policy(ipsec_policy_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_ipsec_policy.rb, line 26 def update_ipsec_policy(ipsec_policy_id, options = {}) response = Excon::Response.new ipsec_policy = list_ipsec_policies.body['ipsecpolicies'].detect do |instance| instance['id'] == ipsec_policy_id end if ipsec_policy ipsec_policy['name'] = options[:name] ipsec_policy['description'] = options[:description] ipsec_policy['tenant_id'] = options[:tenant_id] ipsec_policy['auth_algorithm'] = options[:auth_algorithm] ipsec_policy['encryption_algorithm'] = options[:encryption_algorithm] ipsec_policy['pfs'] = options[:pfs] ipsec_policy['transform_protocol'] = options[:transform_protocol] ipsec_policy['encapsulation_mode'] = options[:encapsulation_mode] ipsec_policy['lifetime'] = options[:lifetime] response.body = {'ipsecpolicy' => ipsec_policy} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_ipsec_site_connection(ipsec_site_connection_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_ipsec_site_connection.rb, line 27 def update_ipsec_site_connection(ipsec_site_connection_id, options = {}) response = Excon::Response.new ipsec_site_connection = list_ipsec_site_connections.body['ipsec_site_connections'].detect do |instance| instance['id'] == ipsec_site_connection_id end if ipsec_site_connection ipsec_site_connection['name'] = options[:name] ipsec_site_connection['description'] = options[:description] ipsec_site_connection['tenant_id'] = options[:tenant_id] ipsec_site_connection['status'] = 'ACTIVE' ipsec_site_connection['admin_state_up'] = options[:admin_state_up] ipsec_site_connection['psk'] = options[:psk] ipsec_site_connection['initiator'] = options[:initiator] ipsec_site_connection['auth_mode'] = "psk" ipsec_site_connection['peer_cidrs'] = options[:peer_cidrs] ipsec_site_connection['mtu'] = options[:mtu] ipsec_site_connection['peer_ep_group_id'] = Fog::Mock.random_numbers(6).to_s ipsec_site_connection['ikepolicy_id'] = options[:ikepolicy_id] || 'ike' ipsec_site_connection['vpnservice_id'] = options[:vpnservice_id] || 'vpn' ipsec_site_connection['dpd'] = options[:dpd] ipsec_site_connection['route_mode'] = "static" ipsec_site_connection['ipsecpolicy_id'] = options[:ipsecpolicy_id] || 'ipsec' ipsec_site_connection['local_ep_group_id'] = Fog::Mock.random_numbers(6).to_s ipsec_site_connection['peer_address'] = options[:peer_address] ipsec_site_connection['peer_id'] = options[:peer_id] response.body = {'ipsec_site_connection' => ipsec_site_connection} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lb_health_monitor(health_monitor_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lb_health_monitor.rb, line 23 def update_lb_health_monitor(health_monitor_id, options = {}) response = Excon::Response.new if health_monitor = list_lb_health_monitors.body['health_monitors'].find { |_| _['id'] == health_monitor_id } health_monitor['delay'] = options[:delay] health_monitor['timeout'] = options[:timeout] health_monitor['max_retries'] = options[:max_retries] health_monitor['http_method'] = options[:http_method] health_monitor['url_path'] = options[:url_path] health_monitor['expected_codes'] = options[:expected_codes] health_monitor['admin_state_up'] = options[:admin_state_up] response.body = {'health_monitor' => health_monitor} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lb_member(member_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lb_member.rb, line 23 def update_lb_member(member_id, options = {}) response = Excon::Response.new if member = list_lb_members.body['members'].find { |_| _['id'] == member_id } member['pool_id'] = options[:pool_id] member['weight'] = options[:weight] member['admin_state_up'] = options[:admin_state_up] response.body = {'member' => member} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lb_pool(pool_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lb_pool.rb, line 23 def update_lb_pool(pool_id, options = {}) response = Excon::Response.new if pool = list_lb_pools.body['pools'].find { |_| _['id'] == pool_id } pool['name'] = options[:name] pool['description'] = options[:description] pool['lb_method'] = options[:lb_method] pool['admin_state_up'] = options[:admin_state_up] response.body = {'pool' => pool} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lb_vip(vip_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lb_vip.rb, line 23 def update_lb_vip(vip_id, options = {}) response = Excon::Response.new if vip = list_lb_vips.body['vips'].find { |_| _['id'] == vip_id } vip['pool_id'] = options[:pool_id] vip['name'] = options[:name] vip['description'] = options[:description] vip['session_persistence'] = options[:session_persistence] vip['connection_limit'] = options[:connection_limit] vip['admin_state_up'] = options[:admin_state_up] response.body = {'vip' => vip} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_healthmonitor(healthmonitor_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_healthmonitor.rb, line 23 def update_lbaas_healthmonitor(healthmonitor_id, options = {}) response = Excon::Response.new if healthmonitor = list_lbaas_health_monitors.body['healthmonitors'].find { |_| _['id'] == healthmonitor_id } healthmonitor['delay'] = options[:delay] healthmonitor['timeout'] = options[:timeout] healthmonitor['max_retries'] = options[:max_retries] healthmonitor['http_method'] = options[:http_method] healthmonitor['url_path'] = options[:url_path] healthmonitor['expected_codes'] = options[:expected_codes] healthmonitor['admin_state_up'] = options[:admin_state_up] response.body = {'healthmonitor' => healthmonitor} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_l7rule(l7policy_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_l7policy.rb, line 24 def update_lbaas_l7rule(l7policy_id, options = {}) response = Excon::Response.new if l7policy = list_l7policies.body['l7policies'].find { |_| _['id'] == l7policy_id } l7policy['action'] = options[:action] l7policy['name'] = options[:name] l7policy['description'] = options[:description] l7policy['redirect_pool_id'] = options[:redirect_pool_id] l7policy['redirect_url'] = options[:redirect_url] l7policy['position'] = options[:position] response.body = {'l7policy' => l7policy} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_listener(listener_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_listener.rb, line 25 def update_lbaas_listener(listener_id, options = {}) response = Excon::Response.new if listener = list_lbaas_listeners.body['listeners'].find { |_| _['id'] == listener_id } listener['name'] = options[:name] listener['description'] = options[:description] listener['connection_limit'] = options[:connection_limit] listener['default_tls_container_ref'] = options[:default_tls_container_ref] listener['sni_container_refs'] = options[:sni_container_refs] listener['admin_state_up'] = options[:admin_state_up] response.body = {'listener' => listener} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_loadbalancer(loadbalancer_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_loadbalancer.rb, line 25 def update_lbaas_loadbalancer(loadbalancer_id, options = {}) response = Excon::Response.new if loadbalancer = list_lbaas_loadbalancers.body['loadbalancers'].find { |_| _['id'] == loadbalancer_id } loadbalancer['name'] = options[:name] loadbalancer['description'] = options[:description] loadbalancer['admin_state_up'] = options[:admin_state_up] response.body = {'loadbalancer' => loadbalancer} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_pool(pool_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_pool.rb, line 23 def update_lbaas_pool(pool_id, options = {}) response = Excon::Response.new if pool = list_lbaas_pools.body['pools'].find { |_| _['id'] == pool_id } pool['name'] = options[:name] pool['description'] = options[:description] pool['lb_algorithm'] = options[:lb_algorithm] pool['admin_state_up'] = options[:admin_state_up] response.body = {'pool' => pool} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_lbaas_pool_member(pool_id, member_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_lbaas_pool_member.rb, line 23 def update_lbaas_pool_member(pool_id, member_id, options = {}) response = Excon::Response.new if member = list_lbaas_pool_members.body['members'].find { |_| _['id'] == member_id } member['pool_id'] = options[:pool_id] member['weight'] = options[:weight] member['admin_state_up'] = options[:admin_state_up] response.body = {'member' => member} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_network(network_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_network.rb, line 44 def update_network(network_id, options = {}) response = Excon::Response.new if network = list_networks.body['networks'].find { |_| _['id'] == network_id } network.merge!(Fog::OpenStack::Network::Real.update(options)) response.body = {'network' => network} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_port(port_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_port.rb, line 24 def update_port(port_id, options = {}) response = Excon::Response.new if port = list_ports.body['ports'].find { |_| _['id'] == port_id } port['name'] = options[:name] port['fixed_ips'] = options[:fixed_ips] || [] port['admin_state_up'] = options[:admin_state_up] port['device_owner'] = options[:device_owner] port['device_id'] = options[:device_id] port['security_groups'] = options[:security_groups] || [] port['allowed_address_pairs'] = options[:allowed_address_pairs] || [] response.body = {'port' => port} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_quota(_tenant_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_quota.rb, line 16 def update_quota(_tenant_id, options = {}) data[:quota_updated] = data[:quota].merge options response = Excon::Response.new response.status = 200 response.body = {'quota' => data[:quota_updated]} response end
update_rbac_policy(rbac_policy_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_rbac_policy.rb, line 23 def update_rbac_policy(rbac_policy_id, options = {}) response = Excon::Response.new rbac_policy = list_rbac_policies.body['rbac_policies'].detect do |instance| instance['id'] == rbac_policy_id end if rbac_policy rbac_policy['target_tenant'] = options[:target_tenant] response.body = {'rbac_policy' => rbac_policy} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_router(router_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_router.rb, line 42 def update_router(router_id, options = {}) response = Excon::Response.new router = list_routers.body['routers'].find { |r| r[:id] == router_id } raise Fog::OpenStack::Network::NotFound unless router options.keys.each { |k| router[k] = options[k] } # remove this in a future egi = options[:external_gateway_info] if egi if egi.kind_of?(Fog::OpenStack::Network::Network) Fog::Logger.deprecation "Passing a model objects into options[:external_gateway_info] is deprecated. \ Please pass external external gateway as follows options[:external_gateway_info] = { :network_id => NETWORK_ID }]" router[:external_gateway_info] = { :network_id => egi.id } elsif egi.is_a?(Hash) router[:external_gateway_info] = egi else raise ArgumentError.new('Invalid external_gateway_info attribute') end end response.body = {'router' => router} response.status = 200 response end
update_security_group(security_group_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_security_group.rb, line 22 def update_security_group(security_group_id, options = {}) response = Excon::Response.new security_group = list_security_groups.body['security_groups'].find do |sg| sg['id'] == security_group_id end if security_group security_group['name'] = options[:name] security_group['description'] = options[:description] response.body = {'security_group' => security_group} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_subnet(subnet_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_subnet.rb, line 24 def update_subnet(subnet_id, options = {}) response = Excon::Response.new if subnet = list_subnets.body['subnets'].find { |_| _['id'] == subnet_id } subnet['name'] = options[:name] subnet['gateway_ip'] = options[:gateway_ip] subnet['dns_nameservers'] = options[:dns_nameservers] || [] subnet['host_routes'] = options[:host_routes] || [] subnet['allocation_pools'] = options[:allocation_pools] || [] subnet['enable_dhcp'] = options[:enable_dhcp] response.body = {'subnet' => subnet} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_subnet_pool(subnet_pool_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_subnet_pool.rb, line 24 def update_subnet_pool(subnet_pool_id, options = {}) subnet_pool = list_subnet_pools.body['subnetpools'].find { |s| s['id'] == subnet_pool_id } if subnet_pool subnet_pool['name'] = options[:name] subnet_pool['description'] = options[:description] subnet_pool['prefixes'] = options[:prefixes] || [] subnet_pool['min_prefixlen'] = options[:min_prefixlen] || 64 subnet_pool['max_prefixlen'] = options[:max_prefixlen] || 64 subnet_pool['default_prefixlen'] = options[:default_prefixlen] || 64 subnet_pool['address_scope_id'] = options[:address_scope_id] subnet_pool['updated_at'] = Time.now.to_s response = Excon::Response.new response.body = {'subnetpool' => subnet_pool} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end
update_vpn_service(vpn_service_id, options = {})
click to toggle source
# File lib/fog/openstack/network/requests/update_vpn_service.rb, line 23 def update_vpn_service(vpn_service_id, options = {}) response = Excon::Response.new if vpn_service = list_vpn_services.body['vpnservices'].detect { |instance| instance['id'] == vpn_service_id } vpn_service['id'] = vpn_service_id vpn_service['subnet_id'] = options[:subnet_id] vpn_service['router_id'] = options[:router_id] vpn_service['name'] = options[:name] vpn_service['description'] = options[:description] vpn_service['status'] = 'ACTIVE' vpn_service['admin_state_up'] = options[:admin_state_up] vpn_service['tenant_id'] = options[:tenant_id] vpn_service['external_v4_ip'] = '1.2.3.4' vpn_service['external_v6_ip'] = '::1' response.body = {'vpnservice' => vpn_service} response.status = 200 response else raise Fog::OpenStack::Network::NotFound end end