diff --git a/app/models/manageiq/providers/nuage/inventory/collector.rb b/app/models/manageiq/providers/nuage/inventory/collector.rb index bbadb5ad46..2df3a959f6 100644 --- a/app/models/manageiq/providers/nuage/inventory/collector.rb +++ b/app/models/manageiq/providers/nuage/inventory/collector.rb @@ -9,15 +9,20 @@ def initialize(_manager, _target) end def initialize_inventory_sources - @cloud_tenants = {} - @cloud_subnets = [] - @l2_cloud_subnets = [] - @security_groups = [] - @floating_ips = [] - @zones = {} - @network_routers = {} - @shared_resources = [] - @cloud_networks_floating = nil + @cloud_tenants = {} + @cloud_subnets = [] + @l2_cloud_subnets = [] + @security_groups = [] + @floating_ips = [] + @zones = {} + @network_routers = {} + @shared_resources = [] + @cloud_networks_floating = nil + @network_ports = [] + @security_groups_per_port = {} + @vm_interfaces_per_port = {} + @container_interfaces_per_port = {} + @host_interfaces_per_port = {} end def vsd_client diff --git a/app/models/manageiq/providers/nuage/inventory/collector/network_manager.rb b/app/models/manageiq/providers/nuage/inventory/collector/network_manager.rb index 0225c60de8..976cbb1ff2 100644 --- a/app/models/manageiq/providers/nuage/inventory/collector/network_manager.rb +++ b/app/models/manageiq/providers/nuage/inventory/collector/network_manager.rb @@ -35,6 +35,29 @@ def zones _zones.values end + def network_ports + return @network_ports if @network_ports.any? + @network_ports.concat(network_routers.each_with_object([]) { |domain, res| res.concat(vsd_client.get_vports_for_domain(domain['ID'])) }) + @network_ports.concat(l2_cloud_subnets.each_with_object([]) { |l2_domain, res| res.concat(vsd_client.get_vports_for_l2_domain(l2_domain['ID'])) }) + @network_ports + end + + def security_groups_for_network_port(port_ems_ref) + @security_groups_per_port[port_ems_ref] ||= vsd_client.get_policy_groups_for_vport(port_ems_ref) + end + + def vm_interfaces_for_network_port(port_ems_ref) + @vm_interfaces_per_port[port_ems_ref] ||= vsd_client.get_vm_interfaces_for_vport(port_ems_ref) + end + + def container_interfaces_for_network_port(port_ems_ref) + @container_interfaces_per_port[port_ems_ref] ||= vsd_client.get_container_interfaces_for_vport(port_ems_ref) + end + + def host_interfaces_for_network_port(port_ems_ref) + @host_interfaces_per_port[port_ems_ref] ||= vsd_client.get_host_interfaces_for_vport(port_ems_ref) + end + def security_group(ems_ref) security_groups.find { |sg| sg['ID'] == ems_ref } end diff --git a/app/models/manageiq/providers/nuage/inventory/collector/target_collection.rb b/app/models/manageiq/providers/nuage/inventory/collector/target_collection.rb index f7cacd882e..5851a3ae85 100644 --- a/app/models/manageiq/providers/nuage/inventory/collector/target_collection.rb +++ b/app/models/manageiq/providers/nuage/inventory/collector/target_collection.rb @@ -45,6 +45,14 @@ def floating_ips [] # TODO(miha-plesko): implement targeted refresh for floating ips end + def network_ports + [] # TODO(miha-plesko): implement targeted refresh for network_ports + end + + def security_groups_for_network_port(_port_ems_ref) + [] # TODO(miha-plesko): implement targeted refresh for network_ports + end + def cloud_subnet(ems_ref) return @cloud_subnets_map[ems_ref] if @cloud_subnets_map.key?(ems_ref) @cloud_subnets_map[ems_ref] = safe_call { vsd_client.get_subnet(ems_ref) } diff --git a/app/models/manageiq/providers/nuage/inventory/parser/network_manager.rb b/app/models/manageiq/providers/nuage/inventory/parser/network_manager.rb index 9ae156db01..928f107fb7 100644 --- a/app/models/manageiq/providers/nuage/inventory/parser/network_manager.rb +++ b/app/models/manageiq/providers/nuage/inventory/parser/network_manager.rb @@ -7,6 +7,7 @@ def parse l2_cloud_subnets security_groups floating_ips + network_ports end private @@ -89,6 +90,45 @@ def floating_ips end end + def network_ports + collector.network_ports.each do |port| + network_port = persister.network_ports.find_or_build(port['ID']).assign_attributes( + :name => port['name'], + :floating_ip => persister.floating_ips.lazy_find(port['associatedFloatingIPID']), + :security_groups => collector.security_groups_for_network_port(port['ID']).map { |sg| persister.security_groups.lazy_find(sg['ID']) }, + :cloud_tenant => persister.cloud_subnets.lazy_find(port['parentID'], :key => :cloud_tenant) + ) + + # Type-specific properties. + case port['type'].to_s.upcase + when 'BRIDGE' + network_port_type = collector.manager.class.bridge_network_port_type + address = nil + when 'CONTAINER' + network_port_type = collector.manager.class.container_network_port_type + address = first_ip_address(collector.container_interfaces_for_network_port(port['ID'])) + when 'HOST' + network_port_type = collector.manager.class.host_network_port_type + address = first_ip_address(collector.host_interfaces_for_network_port(port['ID'])) + when 'VM' + network_port_type = collector.manager.class.vm_network_port_type + address = first_ip_address(collector.vm_interfaces_for_network_port(port['ID'])) + else + network_port_type = 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort' + address = nil + end + + network_port.type = network_port_type + network_port.cloud_subnet_network_ports = [ + persister.cloud_subnet_network_ports.find_or_build_by( + :cloud_subnet => persister.cloud_subnets.lazy_find(port['parentID']), + :address => address, + :network_port => network_port + ) + ] + end + end + def map_extra_attributes(zone_id) if (zone = collector.zone(zone_id)) { @@ -105,4 +145,8 @@ def to_cidr(address, netmask) return unless address && netmask address.to_s + '/' + netmask.to_s.split(".").map { |e| e.to_i.to_s(2).rjust(8, "0") }.join.count("1").to_s end + + def first_ip_address(interfaces) + (interfaces.first || {}).dig('IPAddress') + end end diff --git a/app/models/manageiq/providers/nuage/inventory/persister/definitions/network_collections.rb b/app/models/manageiq/providers/nuage/inventory/persister/definitions/network_collections.rb index 61d5520543..614b774fed 100644 --- a/app/models/manageiq/providers/nuage/inventory/persister/definitions/network_collections.rb +++ b/app/models/manageiq/providers/nuage/inventory/persister/definitions/network_collections.rb @@ -7,11 +7,20 @@ def initialize_network_inventory_collections security_groups cloud_networks floating_ips + network_ports network_routers).each do |name| add_collection(network, name) do |builder| builder.add_properties(:parent => manager) # including targeted end end + + add_cloud_subnet_network_ports + end + + def add_cloud_subnet_network_ports(extra_properties = {}) + add_collection(network, :cloud_subnet_network_ports, extra_properties) do |builder| + builder.add_properties(:parent => manager, :parent_inventory_collections => %i(network_ports)) + end end end diff --git a/app/models/manageiq/providers/nuage/network_manager.rb b/app/models/manageiq/providers/nuage/network_manager.rb index 5885c947a2..ac094a5c28 100644 --- a/app/models/manageiq/providers/nuage/network_manager.rb +++ b/app/models/manageiq/providers/nuage/network_manager.rb @@ -13,6 +13,7 @@ class ManageIQ::Providers::Nuage::NetworkManager < ManageIQ::Providers::NetworkM require_nested :CloudSubnetL2 require_nested :SecurityGroup require_nested :FloatingIp + require_nested :NetworkPort supports :ems_network_new @@ -41,20 +42,38 @@ def supports_authentication?(authtype) supported_auth_types.include?(authtype.to_s) end - def self.event_monitor_class - ManageIQ::Providers::Nuage::NetworkManager::EventCatcher - end + class << self + def event_monitor_class + ManageIQ::Providers::Nuage::NetworkManager::EventCatcher + end - def self.l2_cloud_subnet_type - 'ManageIQ::Providers::Nuage::NetworkManager::CloudSubnetL2' - end + def l2_cloud_subnet_type + 'ManageIQ::Providers::Nuage::NetworkManager::CloudSubnetL2' + end - def self.l3_cloud_subnet_type - 'ManageIQ::Providers::Nuage::NetworkManager::CloudSubnetL3' - end + def l3_cloud_subnet_type + 'ManageIQ::Providers::Nuage::NetworkManager::CloudSubnetL3' + end + + def floating_cloud_network_type + 'ManageIQ::Providers::Nuage::NetworkManager::CloudNetwork::Floating' + end + + def bridge_network_port_type + 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Bridge' + end + + def container_network_port_type + 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Container' + end + + def host_network_port_type + 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Host' + end - def self.floating_cloud_network_type - 'ManageIQ::Providers::Nuage::NetworkManager::CloudNetwork::Floating' + def vm_network_port_type + 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Vm' + end end def name diff --git a/app/models/manageiq/providers/nuage/network_manager/network_port/bridge.rb b/app/models/manageiq/providers/nuage/network_manager/network_port/bridge.rb new file mode 100644 index 0000000000..c091b0beff --- /dev/null +++ b/app/models/manageiq/providers/nuage/network_manager/network_port/bridge.rb @@ -0,0 +1,2 @@ +class ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Bridge < ::ManageIQ::Providers::Nuage::NetworkManager::NetworkPort +end diff --git a/app/models/manageiq/providers/nuage/network_manager/network_port/container.rb b/app/models/manageiq/providers/nuage/network_manager/network_port/container.rb new file mode 100644 index 0000000000..bc18c44aca --- /dev/null +++ b/app/models/manageiq/providers/nuage/network_manager/network_port/container.rb @@ -0,0 +1,2 @@ +class ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Container < ::ManageIQ::Providers::Nuage::NetworkManager::NetworkPort +end diff --git a/app/models/manageiq/providers/nuage/network_manager/network_port/host.rb b/app/models/manageiq/providers/nuage/network_manager/network_port/host.rb new file mode 100644 index 0000000000..0f12864521 --- /dev/null +++ b/app/models/manageiq/providers/nuage/network_manager/network_port/host.rb @@ -0,0 +1,2 @@ +class ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Host < ::ManageIQ::Providers::Nuage::NetworkManager::NetworkPort +end diff --git a/app/models/manageiq/providers/nuage/network_manager/network_port/vm.rb b/app/models/manageiq/providers/nuage/network_manager/network_port/vm.rb new file mode 100644 index 0000000000..8a3c15fd91 --- /dev/null +++ b/app/models/manageiq/providers/nuage/network_manager/network_port/vm.rb @@ -0,0 +1,2 @@ +class ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Vm < ::ManageIQ::Providers::Nuage::NetworkManager::NetworkPort +end diff --git a/app/models/manageiq/providers/nuage/network_manager/vsd_client.rb b/app/models/manageiq/providers/nuage/network_manager/vsd_client.rb index 406736cf5c..9e39f55b24 100644 --- a/app/models/manageiq/providers/nuage/network_manager/vsd_client.rb +++ b/app/models/manageiq/providers/nuage/network_manager/vsd_client.rb @@ -78,6 +78,22 @@ def get_policy_groups_for_domain(domain_id) get_list("domains/#{domain_id}/policygroups") end + def get_policy_groups_for_vport(vport_id) + get_list("vports/#{vport_id}/policygroups") + end + + def get_vm_interfaces_for_vport(vport_id) + get_list("vports/#{vport_id}/vminterfaces") + end + + def get_container_interfaces_for_vport(vport_id) + get_list("vports/#{vport_id}/containerinterfaces") + end + + def get_host_interfaces_for_vport(vport_id) + get_list("vports/#{vport_id}/hostinterfaces") + end + def get_l2_domains get_list('l2domains') end @@ -90,6 +106,14 @@ def get_sharednetworkresources get_list('sharednetworkresources') end + def get_vports_for_domain(domain_id) + get_list("domains/#{domain_id}/vports") + end + + def get_vports_for_l2_domain(l2_domain_id) + get_list("l2domains/#{l2_domain_id}/vports") + end + private # TODO(miha-plesko): Is this filter really supposed to be used here in client? Looks like debugging leftover, diff --git a/spec/models/manageiq/providers/nuage/network_manager/vcr_specs/refresher_spec.rb b/spec/models/manageiq/providers/nuage/network_manager/vcr_specs/refresher_spec.rb index ae480ea059..ae63784e39 100644 --- a/spec/models/manageiq/providers/nuage/network_manager/vcr_specs/refresher_spec.rb +++ b/spec/models/manageiq/providers/nuage/network_manager/vcr_specs/refresher_spec.rb @@ -61,6 +61,10 @@ let(:router_ref) { "75ad8ee8-726c-4950-94bc-6a5aab64631d" } let(:floating_ip_ref) { "3a00891b-29ba-4f60-8f35-033d84aa1083" } let(:network_ref) { "17b305a7-eec9-4492-acb9-20a1d63a8ba1" } + let(:cont_port_ref) { "dd9a4d57-2e24-427b-8aef-4d2925df47b2" } + let(:vm_port_ref) { "15d1369e-9553-4e83-8bb9-3a6c269f81ae" } + let(:bridge_port_ref) { "43b7faad-2c76-4945-9412-66a04bde7b6a" } + let(:host_port_ref) { "b19075d3-a797-4dcd-93be-de52b4247e46" } ALL_REFRESH_SETTINGS.each do |settings| context "with settings #{settings}" do @@ -90,6 +94,7 @@ assert_l2_cloud_subnets assert_floating_ips assert_cloud_networks + assert_network_ports end end end @@ -103,7 +108,7 @@ def assert_table_counts expect(SecurityGroup.count).to eq(1) expect(CloudSubnet.count).to eq(6) expect(FloatingIp.count).to eq(3) - expect(NetworkPort.count).to eq(0) + expect(NetworkPort.count).to eq(4) expect(NetworkRouter.count).to eq(1) end @@ -270,4 +275,66 @@ def assert_cloud_networks ) expect(net.floating_ips).to include(FloatingIp.find_by(:ems_ref => floating_ip_ref)) end + + def assert_network_ports + container_port = NetworkPort.find_by(:ems_ref => cont_port_ref) + expect(container_port).to have_attributes( + :name => 'Container VPort 1ea3d199', + :type => 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Container', + :floating_ip => nil, + :security_groups => [SecurityGroup.find_by(:ems_ref => security_group_ref)], + :cloud_tenant => CloudTenant.find_by(:ems_ref => tenant_ref2) + ) + expect(container_port.cloud_subnet_network_ports.size).to eq(1) + expect(container_port.cloud_subnet_network_ports.first).to have_attributes( + :cloud_subnet => CloudSubnet.find_by(:ems_ref => cloud_subnet_ref1), + :network_port => container_port, + :address => '10.98.80.100' + ) + + vm_port = NetworkPort.find_by(:ems_ref => vm_port_ref) + expect(vm_port).to have_attributes( + :name => 'VM VPort 70e41192', + :type => 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Vm', + :floating_ip => nil, + :security_groups => [SecurityGroup.find_by(:ems_ref => security_group_ref)], + :cloud_tenant => CloudTenant.find_by(:ems_ref => tenant_ref2) + ) + expect(vm_port.cloud_subnet_network_ports.size).to eq(1) + expect(vm_port.cloud_subnet_network_ports.first).to have_attributes( + :cloud_subnet => CloudSubnet.find_by(:ems_ref => cloud_subnet_ref1), + :network_port => vm_port, + :address => '10.98.78.179' + ) + + bridge_port = NetworkPort.find_by(:ems_ref => bridge_port_ref) + expect(bridge_port).to have_attributes( + :name => 'Bridge VPort ad817d5a', + :type => 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Bridge', + :floating_ip => nil, + :security_groups => [SecurityGroup.find_by(:ems_ref => security_group_ref)], + :cloud_tenant => CloudTenant.find_by(:ems_ref => tenant_ref2) + ) + expect(bridge_port.cloud_subnet_network_ports.size).to eq(1) + expect(bridge_port.cloud_subnet_network_ports.first).to have_attributes( + :cloud_subnet => CloudSubnet.find_by(:ems_ref => cloud_subnet_ref1), + :network_port => bridge_port, + :address => nil + ) + + host_port = NetworkPort.find_by(:ems_ref => host_port_ref) + expect(host_port).to have_attributes( + :name => 'Host VPort 25772231', + :type => 'ManageIQ::Providers::Nuage::NetworkManager::NetworkPort::Host', + :floating_ip => FloatingIp.find_by(:ems_ref => floating_ip_ref), + :security_groups => [SecurityGroup.find_by(:ems_ref => security_group_ref)], + :cloud_tenant => CloudTenant.find_by(:ems_ref => tenant_ref2) + ) + expect(host_port.cloud_subnet_network_ports.size).to eq(1) + expect(host_port.cloud_subnet_network_ports.first).to have_attributes( + :cloud_subnet => CloudSubnet.find_by(:ems_ref => cloud_subnet_ref1), + :network_port => host_port, + :address => '10.98.77.179' + ) + end end diff --git a/spec/vcr_cassettes/manageiq/providers/nuage/network_manager/refresher.yml b/spec/vcr_cassettes/manageiq/providers/nuage/network_manager/refresher.yml index ff9795702e..b998e6bbb4 100644 --- a/spec/vcr_cassettes/manageiq/providers/nuage/network_manager/refresher.yml +++ b/spec/vcr_cassettes/manageiq/providers/nuage/network_manager/refresher.yml @@ -834,4 +834,1924 @@ http_interactions: ] http_version: recorded_at: Tue, 12 Jun 2018 09:48:21 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/7dcd3108-ce83-45a5-88db-4ad5f32e2eb4/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/7dcd3108-ce83-45a5-88db-4ad5f32e2eb4/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/domains/75ad8ee8-726c-4950-94bc-6a5aab64631d/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "lastUpdatedDate":1528371984000, + "creationDate":1528371984000, + "name":"Container VPort 1ea3d199", + "gatewayMACMoveRole":null, + "trunkRole":null, + "type":"CONTAINER", + "subType":"NONE", + "description":null, + "systemType":"SOFTWARE", + "addressSpoofing":"INHERITED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "ID":"dd9a4d57-2e24-427b-8aef-4d2925df47b2", + "parentID":"d60d316a-c1ac-4412-813c-9652bdbc4e41", + "externalID":null, + "assocEntityID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "domainID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "zoneID":"3b11a2d0-2082-42f1-92db-0b05264f372e", + "multiNICVPortID":null, + "VLANID":null, + "associatedFloatingIPID":null, + "hasAttachedInterfaces":false, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + }, + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "lastUpdatedDate":1528371978000, + "creationDate":1528371978000, + "name":"VM VPort 70e41192", + "gatewayMACMoveRole":null, + "trunkRole":null, + "type":"VM", + "subType":"NONE", + "description":null, + "systemType":"SOFTWARE", + "addressSpoofing":"INHERITED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "ID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "parentID":"d60d316a-c1ac-4412-813c-9652bdbc4e41", + "externalID":null, + "assocEntityID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "domainID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "zoneID":"3b11a2d0-2082-42f1-92db-0b05264f372e", + "multiNICVPortID":null, + "VLANID":null, + "associatedFloatingIPID":null, + "hasAttachedInterfaces":false, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + }, + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"43f8868f-4bc1-472c-9d19-533dcfcb1ee0", + "lastUpdatedDate":1528394448000, + "creationDate":1528394447000, + "name":"Bridge VPort ad817d5a", + "gatewayMACMoveRole":"TERTIARY", + "trunkRole":null, + "type":"BRIDGE", + "subType":"NONE", + "description":null, + "systemType":"HARDWARE", + "addressSpoofing":"ENABLED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"43b7faad-2c76-4945-9412-66a04bde7b6a", + "parentID":"d60d316a-c1ac-4412-813c-9652bdbc4e41", + "externalID":null, + "assocEntityID":"5c23e830-308d-4611-97f5-50262d43fc33", + "domainID":"8010cb8a-e40f-4f68-b27b-503e8befb570", + "zoneID":"54a37c02-b5e7-4e46-bb4e-ca4090bb31da", + "multiNICVPortID":null, + "VLANID":"a9c1a7ab-46ac-49ec-86a8-3eecc297ee40", + "associatedFloatingIPID":null, + "hasAttachedInterfaces":true, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + }, + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"43f8868f-4bc1-472c-9d19-533dcfcb1ee0", + "lastUpdatedDate":1528395214000, + "creationDate":1528395175000, + "name":"Host VPort 25772231", + "gatewayMACMoveRole":null, + "trunkRole":null, + "type":"HOST", + "subType":"NONE", + "description":null, + "systemType":"SOFTWARE", + "addressSpoofing":"INHERITED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"b19075d3-a797-4dcd-93be-de52b4247e46", + "parentID":"d60d316a-c1ac-4412-813c-9652bdbc4e41", + "externalID":null, + "assocEntityID":"b443568c-c67f-4ab8-bd9c-a9a1be11464d", + "domainID":"8010cb8a-e40f-4f68-b27b-503e8befb570", + "zoneID":"505a46cc-979b-4565-8f64-6e73dc9c8bd0", + "multiNICVPortID":null, + "VLANID":"776239dc-6b52-4a25-b971-dca4a85bfba8", + "associatedFloatingIPID":"3a00891b-29ba-4f60-8f35-033d84aa1083", + "hasAttachedInterfaces":true, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + } + ] + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/domains/75ad8ee8-726c-4950-94bc-6a5aab64631d/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "lastUpdatedDate":1528371984000, + "creationDate":1528371984000, + "name":"Container VPort 1ea3d199", + "gatewayMACMoveRole":null, + "trunkRole":null, + "type":"CONTAINER", + "subType":"NONE", + "description":null, + "systemType":"SOFTWARE", + "addressSpoofing":"INHERITED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "ID":"dd9a4d57-2e24-427b-8aef-4d2925df47b2", + "parentID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "externalID":null, + "assocEntityID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "domainID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "zoneID":"3b11a2d0-2082-42f1-92db-0b05264f372e", + "multiNICVPortID":null, + "VLANID":null, + "associatedFloatingIPID":null, + "hasAttachedInterfaces":false, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + }, + { + "children":null, + "parentType":"subnet", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "lastUpdatedDate":1528371978000, + "creationDate":1528371978000, + "name":"VM VPort 70e41192", + "gatewayMACMoveRole":null, + "trunkRole":null, + "type":"VM", + "subType":"NONE", + "description":null, + "systemType":"SOFTWARE", + "addressSpoofing":"INHERITED", + "active":false, + "operationalState":"INIT", + "peerOperationalState":null, + "segmentationType":null, + "owner":"5dcc7f62-7b40-4179-bdff-26bfe89eb024", + "ID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "parentID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "externalID":null, + "assocEntityID":"adbfcb81-e0ab-4b7e-9e51-1b6c5e862bb9", + "domainID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "zoneID":"3b11a2d0-2082-42f1-92db-0b05264f372e", + "multiNICVPortID":null, + "VLANID":null, + "associatedFloatingIPID":null, + "hasAttachedInterfaces":false, + "multicast":"INHERITED", + "associatedMulticastChannelMapID":null, + "DPI":"INHERITED", + "associatedSendMulticastChannelMapID":null, + "associatedTrunkID":null, + "segmentationID":null, + "associatedSSID":null + } + ] + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/3b733a41-774d-4aaa-8e64-588d5533a5c0/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/3b733a41-774d-4aaa-8e64-588d5533a5c0/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/03a955bc-add4-4346-abb5-85701477fa4e/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/03a955bc-add4-4346-abb5-85701477fa4e/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/8efc78b0-df2a-4c6f-964b-463a9d106bed/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/l2domains/8efc78b0-df2a-4c6f-964b-463a9d106bed/vports + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpiZTYyM2ExNS0yZWQ3LTQ4OGUtODAxZi1hMGFlOTViZmZhMjE= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Tue, 10-Jul-2018 06:35:06 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Wed, 11 Jul 2018 06:35:06 GMT + body: + encoding: ASCII-8BIT + string: '' + http_version: + recorded_at: Wed, 11 Jul 2018 06:35:06 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/dd9a4d57-2e24-427b-8aef-4d2925df47b2/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '1' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/dd9a4d57-2e24-427b-8aef-4d2925df47b2/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '1' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/dd9a4d57-2e24-427b-8aef-4d2925df47b2/containerinterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Demo Container Interface", + "policyDecisionID":null, + "domainName":"Some Domain Name", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.80.1", + "networkName":"VmNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "parentID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "externalID":null, + "IPAddress":"10.98.80.100", + "IPv6Address":null, + "MAC":"00:05:06:07:00:11", + "domainID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "attachedNetworkID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "zoneID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "VPortID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"VM VPort Demo" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/dd9a4d57-2e24-427b-8aef-4d2925df47b2/containerinterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Demo Container Interface", + "policyDecisionID":null, + "domainName":"Some Domain Name", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.80.1", + "networkName":"VmNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "parentID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "externalID":null, + "IPAddress":"10.98.80.100", + "IPv6Address":null, + "MAC":"00:05:06:07:00:11", + "domainID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "attachedNetworkID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "zoneID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "VPortID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"VM VPort Demo" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/15d1369e-9553-4e83-8bb9-3a6c269f81ae/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '2' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/15d1369e-9553-4e83-8bb9-3a6c269f81ae/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '2' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:01 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/15d1369e-9553-4e83-8bb9-3a6c269f81ae/vminterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Demo VM Interface", + "policyDecisionID":null, + "domainName":"Some Domain Name", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.78.1", + "networkName":"VmNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "parentID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "externalID":null, + "IPAddress":"10.98.78.179", + "IPv6Address":null, + "MAC":"00:05:06:07:08:99", + "domainID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "attachedNetworkID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "zoneID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "VPortID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"VM VPort Demo" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/15d1369e-9553-4e83-8bb9-3a6c269f81ae/vminterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Demo VM Interface", + "policyDecisionID":null, + "domainName":"Some Domain Name", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.78.1", + "networkName":"VmNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "parentID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "externalID":null, + "IPAddress":"10.98.78.179", + "IPv6Address":null, + "MAC":"00:05:06:07:08:99", + "domainID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "attachedNetworkID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "zoneID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "VPortID":"15d1369e-9553-4e83-8bb9-3a6c269f81ae", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"VM VPort Demo" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/43b7faad-2c76-4945-9412-66a04bde7b6a/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/43b7faad-2c76-4945-9412-66a04bde7b6a/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/b19075d3-a797-4dcd-93be-de52b4247e46/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/b19075d3-a797-4dcd-93be-de52b4247e46/policygroups + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:02 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - name ASC + X-Nuage-Count: + - '0' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Length: + - '0' + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: UTF-8 + string: | + [ + { + "children":null, + "parentType":"domain", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "lastUpdatedDate":1531303445000, + "creationDate":1513023412000, + "name":"Test Policy Group", + "description":null, + "type":"SOFTWARE", + "external":false, + "entityState":null, + "owner":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "ID":"02e072ef-ca95-4164-856d-3ff177b9c13c", + "parentID":"75ad8ee8-726c-4950-94bc-6a5aab64631d", + "externalID":null, + "EVPNCommunityTag":null, + "templateID":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "policyGroupID":1987103703 + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:02 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/b19075d3-a797-4dcd-93be-de52b4247e46/hostinterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:03 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - ID ASC + X-Nuage-Count: + - '1' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Host interface 2", + "policyDecisionID":null, + "domainName":"BRIDGE-HOST-Example", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.77.1", + "networkName":"HostNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"fd0fe9cc-170c-492a-9e18-68ad0c281413", + "parentID":"b19075d3-a797-4dcd-93be-de52b4247e46", + "externalID":null, + "IPAddress":"10.98.77.179", + "IPv6Address":null, + "MAC":"00:05:06:07:08:09", + "domainID":"8010cb8a-e40f-4f68-b27b-503e8befb570", + "attachedNetworkID":"b443568c-c67f-4ab8-bd9c-a9a1be11464d", + "zoneID":"505a46cc-979b-4565-8f64-6e73dc9c8bd0", + "VPortID":"b19075d3-a797-4dcd-93be-de52b4247e46", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"Host VPort 25772231" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:03 GMT +- request: + method: get + uri: https://NUAGE_NETWORK_HOST:8443/nuage/api/v5_0/vports/b19075d3-a797-4dcd-93be-de52b4247e46/hostinterfaces + body: + encoding: US-ASCII + string: '' + headers: + Accept: + - "*/*" + Accept-Encoding: + - gzip, deflate + User-Agent: + - rest-client/2.0.2 (linux-gnu x86_64) ruby/2.4.3p205 + X-Nuage-Organization: + - csp + Content-Type: + - application/json; charset=UTF-8 + Authorization: + - Basic eGxhYjpkMTQ2ZmRhYi1jODcwLTQ2MGUtODNjYS1kNjZmMzQ1Yjk4Y2M= + response: + status: + code: 200 + message: OK + headers: + Server: + - Apache-Coyote/1.1 + Pragma: + - No-cache + Cache-Control: + - no-cache + Expires: + - Thu, 01 Jan 1970 01:00:00 CET + Set-Cookie: + - rememberMe=deleteMe; Path=/nuage; Max-Age=0; Expires=Wed, 11-Jul-2018 07:12:03 + GMT + Access-Control-Allow-Origin: + - "*" + X-Nuage-Orderby: + - ID ASC + X-Nuage-Count: + - '1' + Access-Control-Expose-Headers: + - X-Nuage-Organization, X-Nuage-ProxyUser, X-Nuage-OrderBy, X-Nuage-FilterType, + X-Nuage-Filter, X-Nuage-Page, X-Nuage-PageSize, X-Nuage-Count, X-Nuage-Custom, + X-Nuage-ClientType + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Date: + - Thu, 12 Jul 2018 07:12:02 GMT + body: + encoding: ASCII-8BIT + string: | + [ + { + "children":null, + "parentType":"vport", + "entityScope":"ENTERPRISE", + "lastUpdatedBy":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "lastUpdatedDate":1528395206000, + "creationDate":1528395192000, + "name":"Host interface 2", + "policyDecisionID":null, + "domainName":"BRIDGE-HOST-Example", + "zoneName":"HOST zone", + "attachedNetworkType":"SUBNET", + "netmask":"255.255.255.0", + "gateway":"10.98.77.1", + "networkName":"HostNet", + "owner":"8a6f0e20-a4db-4878-ad84-9cc61756cd5e", + "ID":"fd0fe9cc-170c-492a-9e18-68ad0c281413", + "parentID":"b19075d3-a797-4dcd-93be-de52b4247e46", + "externalID":null, + "IPAddress":"10.98.77.179", + "IPv6Address":null, + "MAC":"00:05:06:07:08:09", + "domainID":"8010cb8a-e40f-4f68-b27b-503e8befb570", + "attachedNetworkID":"b443568c-c67f-4ab8-bd9c-a9a1be11464d", + "zoneID":"505a46cc-979b-4565-8f64-6e73dc9c8bd0", + "VPortID":"b19075d3-a797-4dcd-93be-de52b4247e46", + "tierID":null, + "IPv6Gateway":null, + "VPortName":"Host VPort 25772231" + } + ] + http_version: + recorded_at: Thu, 12 Jul 2018 07:12:03 GMT recorded_with: VCR 3.0.3