</edge> ''' vsm_obj = VSM("10.110.28.44:443", "admin", "", "default") py_dict = {'datacentermoid': 'datacenter-2', 'type': 'distributedrouter', 'appliances': {'appliancesize': 'compact', 'appliance': [{'resourcepoolid': 'resgroup-8', 'datastoreid': 'datastore-20'}]}, 'mgmtinterface': {'connectedtoid': 'dvportgroup-19'}, } edge_schema = EdgeSchema(py_dict) print edge_schema.appliances.appliances[1].resourcePoolId print edge_schema.mgmtInterface.connectedToId print edge_schema.get_data('xml') edge_client = Edge(vsm_obj) base_client.bulk_create(edge_client, [py_dict]) response = '<edge><datacenterMoid>datacenter-2</datacenterMoid><type>distributedRouter</type><appliances><applianceSize>compact</applianceSize><appliance><resourcePoolId>resgroup-20</resourcePoolId><datastoreId>datastore-23</datastoreId></appliance><appliance><resourcePoolId>resgroup-21</resourcePoolId><datastoreId>datastore-23</datastoreId></appliance></appliances><mgmtInterface><connectedToId>dvportgroup-38</connectedToId><addressGroups><addressGroup><primaryAddress>10.112.196.165</primaryAddress><subnetMask>255.255.252.0</subnetMask></addressGroup></addressGroups></mgmtInterface></edge>' edge_schema = EdgeSchema() edge_schema.set_data(response, 'xml') py_dict = {'ipAddress': '10.115.175.237', 'userName': '******', 'password': '******'} vsm_obj = VSM("10.115.175.238:443", "admin", "default") edge_create_controller = Edge(vsm_obj) edge_schema = EdgeSchema() edge_schema.datacenterMoid = 'datacenter-2' edge_schema.type = 'distributedRouter' edge_schema.appliances.applianceSize = 'compact'
self.set_create_endpoint('/element-managers/nvp') def create(self, r_schema): nvp_registration_schema = r_schema result_obj = super(NVPRegistration, self).create(nvp_registration_schema) if result_obj.status_code == int(403): result = neutron_result.Result() result.set_data(result_obj.get_response_data(), self.accept_type) if nvp_registration_schema.cert_thumbprint == '' or \ nvp_registration_schema.cert_thumbprint is None: nvp_registration_schema.cert_thumbprint = result.errorData.thumbprint result_obj = super(NVPRegistration, self).create(nvp_registration_schema) return result_obj if __name__ == '__main__': import base_client nc = neutron.Neutron("10.24.115.115:8082", "root", "vmware") nvp_register = NVPRegistration(neutron=nc) py_dict = { 'ipaddress': '192.168.2.3', 'username': '******', 'password': '******', 'role': 'API_PROVIDER' } base_client.bulk_create(nvp_register, [py_dict])
status = job_status.poll_jobs('COMPLETED', 300) # timeout in seconds self.log.debug("Network fabric unconfigure/uninstall status %s" % status) self.log.debug("*** Sleeping for 90 sec due to PR 1043761 Takes time to remove vmknics from hosts ***") time.sleep(90) return result_obj if __name__ == '__main__': import base_client vsm_obj = VSM("10.110.28.44:443", "admin", "default") nwFabric = NetworkFabric(vsm=vsm_obj) switch = {'objectId': 'switch-1'} py_dict = {'featureid': 'com.vmware.vshield.vsm.vxlan', 'resourceconfig': [{'resourceId': 'vds-7', 'configspec': {'switch': { 'objectid': 'switch-1' }, 'mtu': '1600' }, 'configspecclass': "VDSContext" }, \ {'resourceid': 'cluster-1', 'configspec': {'switch': switch, 'vlanid': '100', 'vmkniccount': '1' }, 'configspecclass': 'ClusterMappingSpec' } ] } base_client.bulk_create(nwFabric, [py_dict])
def init(self, py_dict): base_client.bulk_create(self, [py_dict])
</vsmGlobalConfig> ''' py_dict = { 'vcinfo': { 'ipaddress': '10.110.28.50', 'username': '******', 'password': '******' } } test_obj = VSMGlobalConfigSchema(py_dict) from vsm import VSM import vsm_global_config import base_client vsm_obj = VSM("10.110.28.44", "admin", "default", "") global_config = vsm_global_config.VSMGlobalConfig(vsm_obj) py_dict = { 'vcinfo': { 'ipaddress': '10.110.28.50', 'username': '******', 'password': '******' } } results = base_client.bulk_create(global_config, [py_dict]) vsmGC = VSMGlobalConfigSchema() vsmGC.vcInfo.ipAddress = '10.112.10.180' vsmGC.vcInfo.userName = '******' vsmGC.vcInfo.password = '******' print vsmGC.get_data_xml()
return _objXML % (self.vcInfo.ipAddress, self.vcInfo.userName, self.vcInfo.password) if __name__=='__main__': ''' XML required for registering vsm is: <vsmGlobalConfig xmlns='vmware.vshield.edge.2.0'> <vcInfo> <ipAddress>#{vc.ip}</ipAddress> <userName>#{vc.username}</userName> <password>#{vc.password}</password> </vcInfo> </vsmGlobalConfig> ''' py_dict = {'vcinfo': {'ipaddress': '10.110.28.50', 'username': '******', 'password': '******'}} test_obj = VSMGlobalConfigSchema(py_dict) from vsm import VSM import vsm_global_config import base_client vsm_obj = VSM("10.110.28.44", "admin", "default", "") global_config = vsm_global_config.VSMGlobalConfig(vsm_obj) py_dict = {'vcinfo': {'ipaddress': '10.110.28.50', 'username': '******', 'password': '******'}} results = base_client.bulk_create(global_config, [py_dict]) vsmGC = VSMGlobalConfigSchema() vsmGC.vcInfo.ipAddress = '10.112.10.180' vsmGC.vcInfo.userName = '******' vsmGC.vcInfo.password = '******' print vsmGC.get_data_xml()
result_obj[0].set_response_data(self.id) return result_obj if __name__ == '__main__': import base_client var = """ <segmentRange> <name>name-2</name> <desc>desc</desc> <begin>10000</begin> <end>11000</end> </segmentRange> """ log = logger.setup_logging('VDNScopeTest') vsm_obj = VSM("10.110.28.44:443", "admin", "default") segment_range_obj = SegmentRange(vsm_obj) py_dict = {'name': 'seg-python-1', 'desc': 'Second_Seg', 'begin': '15000', 'end': '15500'} #segment_id = base_client.bulk_create(segment_range_obj, [py_dict]) #segment_range_obj.id = '3' #response = segment_range_obj.delete() py_dict1 = {'name': 'demo-segmentid-253124', 'begin': '11001', 'end': '12000'} #py_dict2 = {'name': '5001-5100', 'begin': '5001', 'end': '5100'} #print segment_range_obj.verify(['3'], [py_dict]) #result = base_client.bulk_verify(segment_range_obj, ['3', '2'], [py_dict1, py_dict2]) #log.info(result) base_client.bulk_create(segment_range_obj, [py_dict]) segment_range_obj.delete() #print segment_range
<desc>desc</desc> <begin>10000</begin> <end>11000</end> </segmentRange> """ log = logger.setup_logging('VDNScopeTest') vsm_obj = VSM("10.110.28.44:443", "admin", "default") segment_range_obj = SegmentRange(vsm_obj) py_dict = { 'name': 'seg-python-1', 'desc': 'Second_Seg', 'begin': '15000', 'end': '15500' } #segment_id = base_client.bulk_create(segment_range_obj, [py_dict]) #segment_range_obj.id = '3' #response = segment_range_obj.delete() py_dict1 = { 'name': 'demo-segmentid-253124', 'begin': '11001', 'end': '12000' } #py_dict2 = {'name': '5001-5100', 'begin': '5001', 'end': '5100'} #print segment_range_obj.verify(['3'], [py_dict]) #result = base_client.bulk_verify(segment_range_obj, ['3', '2'], [py_dict1, py_dict2]) #log.info(result) base_client.bulk_create(segment_range_obj, [py_dict]) segment_range_obj.delete() #print segment_range
return response if __name__ == '__main__': import neutron import base_client from service import Service from servicegroup import ServiceGroup log = logger.setup_logging('Neutron ServiceGroup Test') neutron_object = neutron.Neutron("10.112.11.7", "admin", "default") #Create Two Services for Service Group Testing service_client_1 = Service(neutron=neutron_object) py_dict = {'display_name': 'Service-1', 'value': '1234', \ 'application_protocol': 'TCP', 'source_port': '2345'} result_objs = base_client.bulk_create(service_client_1, [py_dict]) print "Create Service Status code: %s" % result_objs[0].status_code print "Service id: %s" % service_client_1.id #Create composite service group for testing composite_service_group_client = ServiceGroup(neutron=neutron_object) py_dict = {'display_name': 'Composite Service Group - 1', 'description': 'SG Description'} result_objs = base_client.bulk_create(composite_service_group_client, [py_dict]) print "Create ServiceGroup Status code: %s" % result_objs[0].status_code print "ServiceGroup id: %s" % composite_service_group_client.id #Add Service-1 to Composite Service Group service_group_member_1 = ServiceGroupMember(composite_service_group_client) py_dict = {'_member_id': service_client_1.id} result_objs = base_client.bulk_create(service_group_member_1, [py_dict]) print "Add Service to Composite Service Group Status code: %s" % result_objs[0].status_code
'compact', 'appliance': [{ 'resourcepoolid': 'resgroup-8', 'datastoreid': 'datastore-20' }] }, 'mgmtinterface': { 'connectedtoid': 'dvportgroup-19' }, } edge_schema = EdgeSchema(py_dict) print edge_schema.appliances.appliances[1].resourcePoolId print edge_schema.mgmtInterface.connectedToId print edge_schema.get_data('xml') edge_client = Edge(vsm_obj) base_client.bulk_create(edge_client, [py_dict]) response = '<edge><datacenterMoid>datacenter-2</datacenterMoid><type>distributedRouter</type><appliances><applianceSize>compact</applianceSize><appliance><resourcePoolId>resgroup-20</resourcePoolId><datastoreId>datastore-23</datastoreId></appliance><appliance><resourcePoolId>resgroup-21</resourcePoolId><datastoreId>datastore-23</datastoreId></appliance></appliances><mgmtInterface><connectedToId>dvportgroup-38</connectedToId><addressGroups><addressGroup><primaryAddress>10.112.196.165</primaryAddress><subnetMask>255.255.252.0</subnetMask></addressGroup></addressGroups></mgmtInterface></edge>' edge_schema = EdgeSchema() edge_schema.set_data(response, 'xml') py_dict = { 'ipAddress': '10.115.175.237', 'userName': '******', 'password': '******' } vsm_obj = VSM("10.115.175.238:443", "admin", "default") edge_create_controller = Edge(vsm_obj) edge_schema = EdgeSchema()
""" Creates multicast range with specified parameters @param schema object which has the paramters to create multicast start and end and name. """ result_obj = super(MulticastRange, self).create(schema_object) location_header = self.location_header if location_header is not None: self.id = location_header.split('/')[-1] result_obj[0].set_response_data(self.id) return result_obj if __name__ == '__main__': import base_client var = """ <multicastRange> <name>first_multicast</name> <desc>desc</desc> <begin>239.1.1.1</begin> <end>239.3.3.3</end> </multicastRange> """ vsm_obj = VSM("10.24.20.197:443", "admin", "default") multicast_range_obj = MulticastRange(vsm_obj) multicast_range_obj.read(); py_dict = {'name': 'multicast-python-1', 'desc': 'First_Multicast', 'begin': '239.0.0.1', 'end': '239.0.0.100'} base_client.bulk_create(multicast_range_obj, [py_dict]) multicast_range_obj.delete();
""" result_obj = super(MulticastRange, self).create(schema_object) location_header = self.location_header if location_header is not None: self.id = location_header.split('/')[-1] result_obj[0].set_response_data(self.id) return result_obj if __name__ == '__main__': import base_client var = """ <multicastRange> <name>first_multicast</name> <desc>desc</desc> <begin>239.1.1.1</begin> <end>239.3.3.3</end> </multicastRange> """ vsm_obj = VSM("10.24.20.197:443", "admin", "default") multicast_range_obj = MulticastRange(vsm_obj) multicast_range_obj.read() py_dict = { 'name': 'multicast-python-1', 'desc': 'First_Multicast', 'begin': '239.0.0.1', 'end': '239.0.0.100' } base_client.bulk_create(multicast_range_obj, [py_dict]) multicast_range_obj.delete()
import neutron_client class LogicalSwitch(neutron_client.NeutronClient): def __init__(self, neutron=None): """ Constructor to create LogicalSwitch object @param neutron object on which LogicalSwitch object has to be configured """ super(LogicalSwitch, self).__init__() self.log = logger.setup_logging(self.__class__.__name__) self.schema_class = 'logical_switch_schema.LogicalSwitchSchema' if neutron is not None: self.set_connection(neutron.get_connection()) self.set_state_endpoint('/lswitches/%s/state') self.set_create_endpoint('/lswitches') self.id = None if __name__ == '__main__': import neutron import base_client log = logger.setup_logging('Neutron IPSet Test') neutron_object = neutron.Neutron("10.110.31.147", "admin", "default") ls = LogicalSwitch(neutron=neutron_object) #Create New IPSet py_dict = {'transport_zone_binding': [{'transport_zone_id': 'tz-40c99b73-a476-43db-995c-9a41aab59016'}], 'display_name': 'ls_1'} result_objs = base_client.bulk_create(ls, [py_dict])
module, class_name = schema_class.split(".") some_module = importlib.import_module(module) loaded_schema_class = getattr(some_module, class_name) # creating an instance of schema class schema_object = loaded_schema_class(pyDict) read_endpoint = "/vdn/controller/cluster" self.response = self.request('PUT', read_endpoint, schema_object.get_data(self.content_type)) result_obj = result.Result() self.set_result(self.response, result_obj) return result_obj if __name__ == '__main__': import base_client vsm_obj = VSM("10.115.173.194:443", "admin", "default") controller = VXLANController(vsm_obj) py_dict = { 'deploytype': 'small', 'name': 'vm-1-12769', 'firstnodeofcluster': 'true', 'hostid': 'host-89', 'resourcepoolid': 'resgroup-104', 'ippoolid': 'ipaddresspool-1', 'datastoreid': 'datastore-92' } base_client.bulk_create(controller, [py_dict]) py_dict = {'firstNodeofCluster': 'true'} controller.delete()
if __name__ == '__main__': import base_client import neutron from logical_services_node import LogicalServicesNode from logical_services_interface import LogicalServicesInterface log = logger.setup_logging("Neutron Load Balancer Test") neutron_object = neutron.Neutron("10.112.11.7", "admin", "default") logical_services_node_client = LogicalServicesNode(neutron=neutron_object) #Create New Logical Services Router py_dict = {'display_name': 'Router-1', 'capacity': 'SMALL',\ 'dns_settings':{'domain_name':'node1', 'primary_dns':'10.112.0.1', 'secondary_dns':'10.112.0.2'}} result_objs = base_client.bulk_create(logical_services_node_client, [py_dict]) print "Create Logical Services Router Status code: %s" % result_objs[0].status_code print "Logical Services Router id: %s" % logical_services_node_client.id py_dict = {'address_groups': \ [{'secondary_ip_addresses': ['192.168.1.2'], \ 'primary_ip_address': '192.168.1.1', \ 'subnet': '24'}], \ 'interface_type': 'INTERNAL', \ 'interface_options': {\ 'enable_proxy_arp': 0, \ 'enable_send_redirects': 0}, \ 'display_name': 'intf-1', \ 'interface_number': 1} #Create New Logical Services Router Interface
print ip_pool.verify(conf_ip_pool) #Create IPPool with correct name py_dict = {"schema" : "/v1/schema/IpPool", "display_name" : "IpPool-1", "subnets" : [ { "static_routes" : [ { "destination_cidr" : "192.175.10.0/24", "next_hop" : "192.175.10.5" } ], "allocation_ranges" : [{ "start" : "192.175.1.2", "end" : "192.175.1.6"}], "cidr" : "192.175.1.0/24" }] } result_objs = base_client.bulk_create(ip_pool_client, [py_dict]) print "Create IPPool Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response_data print "IPPool id: %s" % ip_pool_client.id ip_pool_allocate = IPPoolAllocate(ip_pool_client) py_dict = {'schema': '/v1/schema/PoolAllocatedResource'} result_objs = base_client.bulk_create(ip_pool_allocate, [py_dict]) print "IPPool allocate Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response_data ip_pool_allocate.delete() print "IPPool allocate Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response_data #Delete IPPool
schema_object.get_data(self.content_type)) result_obj = result.Result() self.set_result(self.response, result_obj) return result_obj def set_controller_ssl(self,pyDict): schema_class = 'vxlan_controller_config_schema.VXLANControllerConfigSchema' module, class_name = schema_class.split(".") some_module = importlib.import_module(module) loaded_schema_class = getattr(some_module, class_name) # creating an instance of schema class schema_object = loaded_schema_class(pyDict) read_endpoint = "/vdn/controller/cluster" self.response = self.request('PUT',read_endpoint, schema_object.get_data(self.content_type)) result_obj = result.Result() self.set_result(self.response, result_obj) return result_obj if __name__ == '__main__': import base_client vsm_obj = VSM("10.115.173.194:443", "admin", "default") controller = VXLANController(vsm_obj) py_dict = {'deploytype': 'small', 'name': 'vm-1-12769', 'firstnodeofcluster': 'true', 'hostid': 'host-89', 'resourcepoolid': 'resgroup-104', 'ippoolid': 'ipaddresspool-1', 'datastoreid': 'datastore-92'} base_client.bulk_create(controller, [py_dict]) py_dict = {'firstNodeofCluster': 'true'} controller.delete()
self.set_delete_endpoint("/services/application") self.id = None if __name__ == '__main__': import base_client var = """ <application> <revision>1</revision> <name>New-Application-Auto-1</name> <inheritanceAllowed>false</inheritanceAllowed> </application> """ log = logger.setup_logging('Application-Test') vsm_obj = VSM("10.110.25.146", "admin", "default", "") application_client = Application(vsm_obj, 'universal') #Create New Application py_dict1 = {'name':'application-auto-1012', 'element':{'applicationprotocol':'TCP', 'value':'1001'}} py_dict1 = {'name':'application-auto-1013', 'element':{'applicationprotocol':'TCP', 'value':''}} result_objs = base_client.bulk_create(application_client, [py_dict1]) print result_objs[0][0].status_code print application_client.id #Update Application py_dict1 = {'name': 'new-application-auto-1', 'revision': '2'} response_status = application_client.update(py_dict1) print response_status #Delete Application response_status = application_client.delete(None) print response_status
""" super(LogicalSwitch, self).__init__() self.log = logger.setup_logging(self.__class__.__name__) self.schema_class = 'logical_switch_schema.LogicalSwitchSchema' if neutron is not None: self.set_connection(neutron.get_connection()) self.set_state_endpoint('/lswitches/%s/state') self.set_create_endpoint('/lswitches') self.id = None if __name__ == '__main__': import neutron import base_client log = logger.setup_logging('Neutron IPSet Test') neutron_object = neutron.Neutron("10.110.31.147", "admin", "default") ls = LogicalSwitch(neutron=neutron_object) #Create New IPSet py_dict = { 'transport_zone_binding': [{ 'transport_zone_id': 'tz-40c99b73-a476-43db-995c-9a41aab59016' }], 'display_name': 'ls_1' } result_objs = base_client.bulk_create(ls, [py_dict])
"*** Sleeping for 90 sec due to PR 1043761 Takes time to remove vmknics from hosts ***" ) time.sleep(90) return result_obj if __name__ == '__main__': import base_client vsm_obj = VSM("10.110.28.44:443", "admin", "default") nwFabric = NetworkFabric(vsm=vsm_obj) switch = {'objectId': 'switch-1'} py_dict = {'featureid': 'com.vmware.vshield.vsm.vxlan', 'resourceconfig': [{'resourceId': 'vds-7', 'configspec': {'switch': { 'objectid': 'switch-1' }, 'mtu': '1600' }, 'configspecclass': "VDSContext" }, \ {'resourceid': 'cluster-1', 'configspec': {'switch': switch, 'vlanid': '100', 'vmkniccount': '1' }, 'configspecclass': 'ClusterMappingSpec' } ] } base_client.bulk_create(nwFabric, [py_dict])
import vsm_client from vsm_network_feature_config_schema import NetworkFeatureConfigSchema from vsm import VSM class NetworkFeature(vsm_client.VSMClient): def __init__(self, vsm, network): """ Constructor to create XVS managed object @param vsm : vsm object on which this managed object needs to be configured """ super(NetworkFeature, self).__init__() self.schema_class = 'vsm_network_feature_config_schema.NetworkFeatureConfigSchema' self.set_connection(vsm.get_connection()) conn = self.get_connection() self.set_create_endpoint("xvs/networks/%s/features" % (network)) self.id = None if __name__ == '__main__': import base_client vsm_obj = VSM("10.144.139.81:443", "admin", "default", "") network = "dvportgroup-60" network = NetworkFeature(vsm_obj, network) ip = {'enabled': 'true'} mac = {'enabled': 'true'} py_dict = {'ipDiscoveryConfig': ip, 'macLearningConfig': mac} base_client.bulk_create(network, [py_dict])
if __name__ == '__main__': import base_client import neutron from logical_services_node import LogicalServicesNode from logical_services_interface import LogicalServicesInterface log = logger.setup_logging("Neutron Load Balancer Test") neutron_object = neutron.Neutron("10.112.11.7", "admin", "default") logical_services_node_client = LogicalServicesNode(neutron=neutron_object) #Create New Logical Services Router py_dict = {'display_name': 'Router-1', 'capacity': 'SMALL',\ 'dns_settings':{'domain_name':'node1', 'primary_dns':'10.112.0.1', 'secondary_dns':'10.112.0.2'}} result_objs = base_client.bulk_create(logical_services_node_client, [py_dict]) print "Create Logical Services Router Status code: %s" % result_objs[ 0].status_code print "Logical Services Router id: %s" % logical_services_node_client.id py_dict = {'address_groups': \ [{'secondary_ip_addresses': ['192.168.1.2'], \ 'primary_ip_address': '192.168.1.1', \ 'subnet': '24'}], \ 'interface_type': 'INTERNAL', \ 'interface_options': {\ 'enable_proxy_arp': 0, \ 'enable_send_redirects': 0}, \ 'display_name': 'intf-1', \ 'interface_number': 1}
if bridge.virtualWire == vwireobjectid: return bridge return common.status_codes.FAILURE if __name__ == '__main__': import base_client py_dict = {'ipAddress': '10.115.173.172', 'userName': '******', 'password': '******'} vsm_obj = VSM("10.115.173.172:443", "admin", "default") # Bulk Create edge = Edge(vsm_obj) edge.id = "edge-1" py_dict = {'bridges': [{'name': 'lif-vwire-1-20758', 'addressgroups': [{'subnetmask': '255.255.0.0', 'addresstype': 'primary', 'primaryaddress': '172.31.1.1'} ], 'isconnected': 'true', 'mtu': '1500', 'connectedtoid': 'virtualwire-1', 'type': 'internal' }] } bridge_create = Bridges(edge) bridge_object_ids = base_client.bulk_create(bridge_create, [py_dict, py_dict]) print bridge_object_ids
virtual_wire = VirtualWire(vdn_scope) virtual_wire_create = VirtualWireCreateSpecSchema() virtual_wire_create.name = 'vWirePython-1' virtual_wire_create.tenantId = 'Tenant-1' virtual_wire_create.description = 'TmpCreation' virtual_wire.create(virtual_wire_create) virtual_wire_get_object = VirtualWireSchema() response = virtual_wire.query() virtual_wire_get_object.set_data(response, 'xml') print virtual_wire_get_object.description # Bulk Create py_dict = { 'name': 'vWire-12', 'description': 'Hello-123', 'tenantId': 'Ten-123' } virtual_wire_object_ids = base_client.bulk_create(virtual_wire_create, [py_dict, py_dict]) print virtual_wire_object_ids virtual_wire_get_object = virtual_wire.read() print virtual_wire_get_object.objectId virtual_wire_get_object.description = 'MODIFIED DESCRIPTION' if virtual_wire.update(virtual_wire_get_object) != int(200): print "Could not UPDATE vWire object" print virtual_wire.response.reason print virtual_wire.response.read() exit(1)
4, 'cidr': '192.168.1.0/24' }, { 'cidr': '192.175.1.0/24' }], 'display_name': 'TestIPPool-1-2091' } json_string = '{"revision":0,"id":"ippool-35977717-0169-4d89-afd9-8d1b7cb81539","display_name":"TestIPPool-1-2091","subnets":[{"static_routes":[{"destination_cidr":"192.168.10.0/24","next_hop":"192.168.10.5"}],"dns_nameservers":["10.10.10.11","10.10.10.12"],"allocation_ranges":[{"start":"192.168.1.10","end":"192.168.1.100"},{"start":"192.168.1.2","end":"192.168.1.6"}],"gateway_ip":"192.168.1.1","ip_version":"4","cidr":"192.168.1.0/24"},{"static_routes":[],"dns_nameservers":[],"allocation_ranges":[],"ip_version":"4","cidr":"192.175.1.0/24"}]}' ip_pool = IpPoolSchema(py_dict) ip_pool_client.id = 'ippool-c15a8a02-443a-4d38-86dc-3cf3664764cf' conf_ip_pool = IpPoolSchema() conf_ip_pool.set_data(json_string, ip_pool_client.accept_type) print ip_pool.verify(conf_ip_pool) #Create IPPool with correct name py_dict = { 'display_name': 'IPPool-1', 'subnets': [{ "cidr": "192.168.0.0/24" }] } result_objs = base_client.bulk_create(ip_pool_client, [py_dict]) print "Create IPPool Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response_data print "IPPool id: %s" % ip_pool_client.id #Delete IPPool result_obj = ip_pool_client.delete() print "Delete status code: %s" % result_obj.status_code
} vsm_obj = VSM("10.115.173.172:443", "admin", "default") # Bulk Create edge = Edge(vsm_obj) edge.id = "edge-1" py_dict = { 'interfaces': [{ 'name': 'lif-vwire-1-20758', 'addressgroups': [{ 'subnetmask': '255.255.0.0', 'addresstype': 'primary', 'primaryaddress': '172.31.1.1' }], 'isconnected': 'true', 'mtu': '1500', 'connectedtoid': 'virtualwire-1', 'type': 'internal' }] } interface_create = Interfaces(edge) interface_object_ids = base_client.bulk_create(interface_create, [py_dict, py_dict]) print interface_object_ids
self.log = logger.setup_logging(self.__class__.__name__) self.schema_class = 'ipset_schema.IPSetSchema' if neutron is not None: self.set_connection(neutron.get_connection()) self.set_create_endpoint('/groupings/ipsets') self.id = None if __name__ == '__main__': import base_client log = logger.setup_logging('Neutron IPSet Test') neutron_object = neutron.Neutron("10.110.30.213:443", "localadmin", "default") ipset_client = IPSet(neutron=neutron_object) #Create New IPSet py_dict = {'schema': 'IPSet', 'display_name': 'IPSet-1', 'value': '192.168.0.101'} result_objs = base_client.bulk_create(ipset_client, [py_dict]) print "Create IPSet Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response print "IPSet id: %s" % ipset_client.id #Update IPSet py_dict1 = {'schema': 'IPSet', 'display_name': 'IPSet-1', 'value': '192.168.100.101', 'revision':'2'} response_status = ipset_client.update(py_dict1) print "Update result response: %s" % response_status #Delete IPSet response_status = ipset_client.delete() print "Delete result response: %s" % response_status.status_code
if __name__ == '__main__': import base_client log = logger.setup_logging('Neutron Services Test') neutron_object = neutron.Neutron("10.110.30.213:443", "localadmin", "default") service_client = Service(neutron=neutron_object) #Create New Service py_dict = { 'schema': 'Service', 'display_name': 'Auto-Service-1', 'value': '101', 'application_protocol': 'TCP', 'source_port': '2345' } result_objs = base_client.bulk_create(service_client, [py_dict]) print "Create Service Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response print "Service id: %s" % service_client.id #Update Service py_dict1 = { 'schema': 'Service', 'display_name': 'Auto-Service-1', 'value': '101', 'application_protocol': 'UDP', 'source_port': '1234', 'revision': '2' } response_status = service_client.update(py_dict1) print "Update result response: %s" % response_status
<name>vdn-21</name> <clusters> <cluster> <cluster><objectId>domain-c59</objectId></cluster> </cluster> </clusters> </vdnScope> """ log = logger.setup_logging('VDNScopeTest') vsm_obj = VSM("10.110.28.44:443", "admin", "default", "") #vdnData = VDNScopeSchema() #vdnData.name = 'vdn-1' #clusterSchema = ClusterSchema() #clusterSchema.objectId = 'domain-c7' #vdnData.clusters.cluster.append(clusterSchema) #vdnScope.create(vdnData) #response = vdnScope.query() #vdnData.setData_xml(response) py_dict1 = {'name': 'vdn-28', 'clusters': {'cluster': [{'objectId': 'domain-c7'}]}} py_dict2 = {'name': 'vdn-29', 'clusters': {'cluster': [{'objectId': 'domain-c7'}]}} py_dict3 = {'clusters': {'cluster': [{'objectid': 'domain-c7'}, {'objectid': 'domain-c22'}]}, 'name': 'network-scope-1-20600'} vdn_scope = VDNScope(vsm_obj) array_of_network_scope = base_client.bulk_create(vdn_scope, [py_dict3]) log.info(array_of_network_scope) #ipamObj.id = arrayOfIPAM[0] #vdnScope.create([pyDict1, pyDict2]) #py_dict1 = {'name': 'VCDN-1', 'clusters': {'cluster': [{'objectId': 'domain-c596'}]}} result = base_client.bulk_verify(vdn_scope, [array_of_network_scope[0].get_response_data()], [py_dict1, py_dict2]) log.info(result)
self.log = logger.setup_logging(self.__class__.__name__) self.schema_class = 'service_schema.ServiceSchema' if neutron is not None: self.set_connection(neutron.get_connection()) self.set_create_endpoint('/groupings/services') self.id = None if __name__ == '__main__': import base_client log = logger.setup_logging('Neutron Services Test') neutron_object = neutron.Neutron("10.110.30.213:443", "localadmin", "default") service_client = Service(neutron=neutron_object) #Create New Service py_dict = {'schema': 'Service', 'display_name': 'Auto-Service-1', 'value': '101', 'application_protocol': 'TCP', 'source_port': '2345'} result_objs = base_client.bulk_create(service_client, [py_dict]) print "Create Service Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response print "Service id: %s" % service_client.id #Update Service py_dict1 = {'schema': 'Service', 'display_name': 'Auto-Service-1', 'value': '101', 'application_protocol': 'UDP', 'source_port': '1234', 'revision':'2'} response_status = service_client.update(py_dict1) print "Update result response: %s" % response_status #Delete Service response_status = service_client.delete() print "Delete result response: %s" % response_status.status_code
} } py_dict2 = { 'name': 'vdn-29', 'clusters': { 'cluster': [{ 'objectId': 'domain-c7' }] } } py_dict3 = { 'clusters': { 'cluster': [{ 'objectid': 'domain-c7' }, { 'objectid': 'domain-c22' }] }, 'name': 'network-scope-1-20600' } vdn_scope = VDNScope(vsm_obj) array_of_network_scope = base_client.bulk_create(vdn_scope, [py_dict3]) log.info(array_of_network_scope) #ipamObj.id = arrayOfIPAM[0] #vdnScope.create([pyDict1, pyDict2]) #py_dict1 = {'name': 'VCDN-1', 'clusters': {'cluster': [{'objectId': 'domain-c596'}]}} result = base_client.bulk_verify( vdn_scope, [array_of_network_scope[0].get_response_data()], [py_dict1, py_dict2]) log.info(result)
def init(self, py_dict): base_client.bulk_create(self, [py_dict])
import vsm_client from vsm_network_feature_config_schema import NetworkFeatureConfigSchema from vsm import VSM class NetworkFeature(vsm_client.VSMClient): def __init__(self, vsm, network): """ Constructor to create XVS managed object @param vsm : vsm object on which this managed object needs to be configured """ super(NetworkFeature, self).__init__() self.schema_class = 'vsm_network_feature_config_schema.NetworkFeatureConfigSchema' self.set_connection(vsm.get_connection()) conn = self.get_connection() self.set_create_endpoint("xvs/networks/%s/features" % (network)) self.id = None if __name__ == '__main__': import base_client vsm_obj = VSM("10.144.139.81:443", "admin", "default", "") network = "dvportgroup-60" network = NetworkFeature(vsm_obj, network) ip = {'enabled': 'true'} mac = {'enabled': 'true'} py_dict = {'ipDiscoveryConfig': ip, 'macLearningConfig': mac} base_client.bulk_create(network, [py_dict])
def query(self): """ Method to perform GET operation """ self.response = self.request('GET', self.read_endpoint) self.log.debug(self.response.status) response = self.response.read() neutron_result_list_schema = ResultList() neutron_result_list_schema.set_data(response, self.accept_type) return neutron_result_list_schema if __name__ == '__main__': log = logger.setup_logging('Neutron IPSet Test') neutron_object = neutron.Neutron("10.110.30.255:443", "localadmin", "default") cl_nodes = ClusterNodes(neutron=neutron_object) #Add new node to existing cluster py_dict = { 'user_name': 'localadmin', 'remote_address': '10.110.27.77:443', 'password': '******', 'cert_thumbprint': '' } result_objs = base_client.bulk_create(cl_nodes, [py_dict]) print "Create IPSet Status code: %s" % result_objs[0].status_code print "Create result response: %s" % result_objs[0].response print "IPSet id: %s" % cl_nodes.id
def get_interface(self): self.schema_class = 'interface_schema.InterfaceSchema' interface_obj = self.read() return interface_obj if __name__ == '__main__': import base_client py_dict = {'ipAddress': '10.115.173.172', 'userName': '******', 'password': '******'} vsm_obj = VSM("10.115.173.172:443", "admin", "default") # Bulk Create edge = Edge(vsm_obj) edge.id = "edge-1" py_dict = {'interfaces': [{'name': 'lif-vwire-1-20758', 'addressgroups': [{'subnetmask': '255.255.0.0', 'addresstype': 'primary', 'primaryaddress': '172.31.1.1'} ], 'isconnected': 'true', 'mtu': '1500', 'connectedtoid': 'virtualwire-1', 'type': 'internal' }] } interface_create = Interfaces(edge) interface_object_ids = base_client.bulk_create(interface_create, [py_dict, py_dict]) print interface_object_ids
if neutron is not None: self.set_connection(neutron.get_connection()) self.set_create_endpoint('/element-managers/vcns') def create(self, r_schema): vsm_registration_schema = r_schema result_obj = super(VSMRegistration, self).create(vsm_registration_schema) if result_obj.status_code == int(403): result = neutron_result.Result() result.set_data(result_obj.get_response_data(), self.accept_type) if vsm_registration_schema.cert_thumbprint == '' or \ vsm_registration_schema.cert_thumbprint is None: vsm_registration_schema.cert_thumbprint = result.errorData.thumbprint result_obj = super(VSMRegistration, self).create(vsm_registration_schema) return result_obj if __name__ == '__main__': import base_client nc = neutron.Neutron("10.110.27.77:443", "localadmin", "default") vsm_register = VSMRegistration(neutron=nc) #vsm_register_schema = registration_schema.Registration() #vsm_register_schema.set_data_json('{"name":"10.110.28.190","vsmUuid":"uuid-2","ipaddress":"10.110.28.190"}') py_dict = {'schema': '/v1/schema/VSMConfig', 'display_name': 'vsm-3', 'address': '10.110.27.60', 'user': '******', 'password': '******', 'cert_thumbprint': ''} base_client.bulk_create(vsm_register, [py_dict]) #print vsm_register_schema.ipaddress #print 'Status code: ' + str(vsm_register.result.status_code)
if __name__ == '__main__': import neutron import base_client from service import Service from servicegroup import ServiceGroup log = logger.setup_logging('Neutron ServiceGroup Test') neutron_object = neutron.Neutron("10.112.11.7", "admin", "default") #Create Two Services for Service Group Testing service_client_1 = Service(neutron=neutron_object) py_dict = {'display_name': 'Service-1', 'value': '1234', \ 'application_protocol': 'TCP', 'source_port': '2345'} result_objs = base_client.bulk_create(service_client_1, [py_dict]) print "Create Service Status code: %s" % result_objs[0].status_code print "Service id: %s" % service_client_1.id #Create composite service group for testing composite_service_group_client = ServiceGroup(neutron=neutron_object) py_dict = { 'display_name': 'Composite Service Group - 1', 'description': 'SG Description' } result_objs = base_client.bulk_create(composite_service_group_client, [py_dict]) print "Create ServiceGroup Status code: %s" % result_objs[0].status_code print "ServiceGroup id: %s" % composite_service_group_client.id #Add Service-1 to Composite Service Group
if __name__ == '__main__': import base_client var = """ <nsxManagerInfo> <nsxManagerIp>10.110.9.131</nsxManagerIp> <nsxManagerUsername>admin</nsxManagerUsername> <nsxManagerPassword>default</nsxManagerPassword> <certificateThumbprint>EA:63:7C:C8:61:80:D9:C8:D4:E7:CB:AA:85:BC:C1:7D:94:8E:6E:14</certificateThumbprint> <isPrimary>true</isPrimary> </nsxManagerInfo> """ log = logger.setup_logging('IPSet-Test') vsm_obj = VSM("10.144.137.131", "admin", "default", "") register_client = Register(vsm_obj) #Create IPSet py_dict1 = {'nsxmanagerip': '10.112.11.38', 'nsxmanagerusername': '******', 'nsxmanagerpassword': '******', 'certificatethumbprint': '0F:5E:D7:D4:DA:E4:B3:AC:FA:1F:FA:1C:11:CB:FC:49:8E:A5:5F:40', 'isprimary': 'true'} result_objs = base_client.bulk_create(register_client, [py_dict1]) print result_objs[0].status_code print register_client.id #Delete IPSet response_status = register_client.delete() print response_status.status_code
var = """ <ipset> <revision>0</revision> <name>TestIpSet-" + str(iterNo) + "</name> <description>Creating IpSet by ATS on scope globalroot-0</description> <inheritanceAllowed>true</inheritanceAllowed> <value>192.168.1.1</value> </ipset> """ log = logger.setup_logging('IPSet-Test') vsm_obj = VSM("10.110.29.100:443", "admin", "default", None) ipset_client = IPSet(vsm_obj, 'universal') #Create IPSet py_dict1 = { 'name': 'ipset-auto-1', 'value': '192.168.1.1', 'description': 'Test' } result_objs = base_client.bulk_create(ipset_client, [py_dict1]) print result_objs[0].status_code print ipset_client.id #Update IPSet py_dict1 = {'description': 'Modified test description', 'revision': '2'} response_status = ipset_client.update(py_dict1) print response_status #Delete IPSet response_status = ipset_client.delete() print response_status.status_code
} vsm_obj = VSM("10.115.173.172:443", "admin", "default") # Bulk Create edge = Edge(vsm_obj) edge.id = "edge-1" py_dict = { 'bridges': [{ 'name': 'lif-vwire-1-20758', 'addressgroups': [{ 'subnetmask': '255.255.0.0', 'addresstype': 'primary', 'primaryaddress': '172.31.1.1' }], 'isconnected': 'true', 'mtu': '1500', 'connectedtoid': 'virtualwire-1', 'type': 'internal' }] } bridge_create = Bridges(edge) bridge_object_ids = base_client.bulk_create(bridge_create, [py_dict, py_dict]) print bridge_object_ids
url_parameters) if __name__ == '__main__': import base_client var = """ <ipamAddressPool> <name>rest-ip-pool-1</name> <gateway>192.168.1.1</gateway> <prefixLength>23</prefixLength> <ipRanges> <ipRangeDto> <startAddress>192.168.1.2</startAddress> <endAddress>192.168.1.3</endAddress> </ipRangeDto> </ipRanges> </ipamAddressPool> """ py_dict = {'ipAddress': '10.112.10.xxx', 'userName': '******', 'password': '******'} vsm_obj = VSM("10.110.28.44:443", "admin", "default") ipam_obj = IPAMAddressPool(vsm_obj) ipam_obj.set_id('ipaddresspool-1') ip = ipam_obj.read() py_dict = dict(name='ip-pool-30', gateway='192.168.1.1', prefixlength='8', ipranges=[{'startaddress': '192.168.100.1', 'endaddress': '192.168.200.1'}]) arrayOfIPAM = base_client.bulk_create(ipam_obj, [py_dict]) ipam_obj.id = arrayOfIPAM[0].get_response() py_dict = dict(name='ip-pool-30', gateway='192.168.1.1', prefixlength='8', ipranges=['192.168.200.1-192.168.201.1', ]) ipam_obj.update(py_dict)
vdn_scope = VDNScope(vsm_obj) # What if we dont want to create vdn Scope but use already created one # setting the id explicitly vdn_scope.id = 'vdnscope-70' virtual_wire = VirtualWire(vdn_scope) virtual_wire_create = VirtualWireCreateSpecSchema() virtual_wire_create.name = 'vWirePython-1' virtual_wire_create.tenantId = 'Tenant-1' virtual_wire_create.description = 'TmpCreation' virtual_wire.create(virtual_wire_create) virtual_wire_get_object = VirtualWireSchema() response = virtual_wire.query() virtual_wire_get_object.set_data(response, 'xml') print virtual_wire_get_object.description # Bulk Create py_dict = {'name': 'vWire-12', 'description': 'Hello-123', 'tenantId': 'Ten-123'} virtual_wire_object_ids = base_client.bulk_create(virtual_wire_create, [py_dict, py_dict]) print virtual_wire_object_ids virtual_wire_get_object = virtual_wire.read() print virtual_wire_get_object.objectId virtual_wire_get_object.description = 'MODIFIED DESCRIPTION' if virtual_wire.update(virtual_wire_get_object) != int(200): print "Could not UPDATE vWire object" print virtual_wire.response.reason print virtual_wire.response.read() exit(1)