def cli_wcfrelay_create(client, resource_group_name, namespace_name, relay_name, relay_type, requires_client_authorization=None, user_metadata=None): from azure.mgmt.relay.models import WcfRelay, Relaytype if relay_type is None: set_relay_type = Relaytype.net_tcp elif relay_type == "Http": set_relay_type = Relaytype.http else: set_relay_type = Relaytype.net_tcp wcfrelay_params = WcfRelay( relay_type=set_relay_type, requires_client_authorization=requires_client_authorization, user_metadata=user_metadata) return client.create_or_update(resource_group_name=resource_group_name, namespace_name=namespace_name, relay_name=relay_name, parameters=wcfrelay_params)
def cli_wcfrelay_update(instance, relay_type=None, requires_client_authorization=None, user_metadata=None, status=None): from azure.mgmt.relay.models import WcfRelay returnobj = WcfRelay(relay_type=instance.relay_type, requires_client_authorization=instance.requires_client_authorization, user_metadata=instance.user_metadata) if relay_type: returnobj.relay_type = relay_type if requires_client_authorization: returnobj.requires_client_authorization = requires_client_authorization if user_metadata: returnobj.user_metadata = user_metadata if status: returnobj.status = status return returnobj
def cli_wcfrelay_update(instance, relay_type=None, requires_client_authorization=None, user_metadata=None, status=None): from azure.mgmt.relay.models import WcfRelay returnobj = WcfRelay( relay_type=instance.relay_type, requires_client_authorization=instance.requires_client_authorization, user_metadata=instance.user_metadata) if relay_type: returnobj.relay_type = relay_type if requires_client_authorization: returnobj.requires_client_authorization = requires_client_authorization if user_metadata: returnobj.user_metadata = user_metadata if status: returnobj.status = status return returnobj
def test_wcfrelay_curd(self, resource_group, location): resource_group_name = resource_group.name #Create a Namespace namespace_name = "testingpythontestcaseeventhubnamespaceEventhub" namespaceparameter = RelayNamespace(location, { 'tag1': 'value1', 'tag2': 'value2' }, Sku(SkuTier.standard)) creatednamespace = self.relay_client.namespaces.create_or_update( resource_group_name, namespace_name, namespaceparameter).result() self.assertEqual(creatednamespace.name, namespace_name) # # # Get created Namespace # getnamespaceresponse = self.relay_client.namespaces.get( resource_group_name, namespace_name) self.assertEqual(getnamespaceresponse.name, namespace_name) # Create a WcfRelay wcfrelay_name = "testingpythontestcasewcfrelay" wcfrelayparameter = WcfRelay(relay_type=Relaytype.net_tcp, requires_client_authorization=True, requires_transport_security=True, user_metadata="User data for WcfRelay") createdwcfrelayresponse = self.relay_client.wcf_relays.create_or_update( resource_group_name, namespace_name, wcfrelay_name, wcfrelayparameter) self.assertEqual(createdwcfrelayresponse.name, wcfrelay_name) self.assertEqual(createdwcfrelayresponse.requires_client_authorization, True) #Get the created wcfRelay geteventhubresponse = self.relay_client.wcf_relays.get( resource_group_name, namespace_name, wcfrelay_name) self.assertEqual(geteventhubresponse.name, wcfrelay_name) self.assertEqual(geteventhubresponse.requires_transport_security, True) self.assertEqual(geteventhubresponse.user_metadata, "User data for WcfRelay") #Get the List of wcfRealy by namespaces getlistbynamespacewcfrelayresponse = list( self.relay_client.wcf_relays.list_by_namespace( resource_group_name, namespace_name)) self.assertGreater(len(getlistbynamespacewcfrelayresponse), 0) # update the Created eventhub wcfrelayupdateparameter = WcfRelay( relay_type=Relaytype.net_tcp, user_metadata="User data for WcfRelay updated") updatewcfrelayresponse = self.relay_client.wcf_relays.create_or_update( resource_group_name, namespace_name, wcfrelay_name, wcfrelayupdateparameter) self.assertEqual(updatewcfrelayresponse.name, wcfrelay_name) self.assertEqual(updatewcfrelayresponse.requires_transport_security, True) self.assertEqual(updatewcfrelayresponse.requires_client_authorization, True) self.assertEqual(updatewcfrelayresponse.user_metadata, "User data for WcfRelay updated") # Create a new authorizationrule authoRule_name = "testingauthrulepy" createwcfrelayauthorule = self.relay_client.wcf_relays.create_or_update_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, [AccessRights('Send'), AccessRights('Listen')]) self.assertEqual( createwcfrelayauthorule.name, authoRule_name, "Authorization rule name not as created - create_or_update_authorization_rule " ) self.assertEqual(len(createwcfrelayauthorule.rights), 2) # Get the created authorizationrule getwcfrelayauthorule = self.relay_client.wcf_relays.get_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) self.assertEqual( getwcfrelayauthorule.name, authoRule_name, "Authorization rule name not as passed as parameter - get_authorization_rule " ) self.assertEqual( len(getwcfrelayauthorule.rights), 2, "Access rights mis match as created - get_authorization_rule ") # update the rights of the authorizatiorule getwcfrelayauthorule.rights.append('Manage') updatewcfrelayauthorule = self.relay_client.wcf_relays.create_or_update_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, getwcfrelayauthorule.rights) self.assertEqual( updatewcfrelayauthorule.name, authoRule_name, "Authorization rule name not as passed as parameter for update call - create_or_update_authorization_rule " ) self.assertEqual( len(updatewcfrelayauthorule.rights), 3, "Access rights mis match as updated - create_or_update_authorization_rule " ) #list all the authorization ruels for the given namespace wcfrelayauthorulelist = list( self.relay_client.wcf_relays.list_authorization_rules( resource_group_name, namespace_name, wcfrelay_name)) self.assertEqual( len(wcfrelayauthorulelist), 1, "number of authorization rule mismatch with the created + default = 2 - list_authorization_rules" ) #List keys for the authorization rule listkeysauthorizationrule = self.relay_client.wcf_relays.list_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) self.assertIsNotNone(listkeysauthorizationrule) # regenerate Keys for authorizationrule - Primary regenratePrimarykeyauthorizationrule = self.relay_client.wcf_relays.regenerate_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, 'PrimaryKey') self.assertNotEqual(listkeysauthorizationrule.primary_key, regenratePrimarykeyauthorizationrule.primary_key) # regenerate Keys for authorizationrule - Primary regenrateSecondarykeyauthorizationrule = self.relay_client.wcf_relays.regenerate_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, 'SecondaryKey') self.assertNotEqual( listkeysauthorizationrule.secondary_key, regenrateSecondarykeyauthorizationrule.secondary_key) # delete the authorizationrule self.relay_client.wcf_relays.delete_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) # Delete the created WcfRelay getwcfrelayresponse = self.relay_client.wcf_relays.delete( resource_group_name, namespace_name, wcfrelay_name) # Delete the create namespace self.relay_client.namespaces.delete(resource_group_name, namespace_name).result()
def test_wcfrelay_curd(self, resource_group, location): resource_group_name = resource_group.name #Create a Namespace namespace_name = "testingpythontestcaseeventhubnamespaceEventhub" namespaceparameter = RelayNamespace(location=location, tags={ 'tag1': 'value1', 'tag2': 'value2' }, sku=Sku(tier="standard")) creatednamespace = self.relay_client.namespaces.begin_create_or_update( resource_group_name, namespace_name, namespaceparameter).result() assert creatednamespace.name == namespace_name # # # Get created Namespace # getnamespaceresponse = self.relay_client.namespaces.get( resource_group_name, namespace_name) assert getnamespaceresponse.name == namespace_name # Create a WcfRelay wcfrelay_name = "testingpythontestcasewcfrelay" wcfrelayparameter = WcfRelay(relay_type=Relaytype.net_tcp, requires_client_authorization=True, requires_transport_security=True, user_metadata="User data for WcfRelay") createdwcfrelayresponse = self.relay_client.wcf_relays.create_or_update( resource_group_name, namespace_name, wcfrelay_name, wcfrelayparameter) assert createdwcfrelayresponse.name == wcfrelay_name assert createdwcfrelayresponse.requires_client_authorization == True #Get the created wcfRelay geteventhubresponse = self.relay_client.wcf_relays.get( resource_group_name, namespace_name, wcfrelay_name) assert geteventhubresponse.name == wcfrelay_name assert geteventhubresponse.requires_transport_security == True assert geteventhubresponse.user_metadata == "User data for WcfRelay" #Get the List of wcfRealy by namespaces getlistbynamespacewcfrelayresponse = list( self.relay_client.wcf_relays.list_by_namespace( resource_group_name, namespace_name)) assert len(getlistbynamespacewcfrelayresponse) > 0 # update the Created eventhub wcfrelayupdateparameter = WcfRelay( relay_type=Relaytype.net_tcp, user_metadata="User data for WcfRelay updated") updatewcfrelayresponse = self.relay_client.wcf_relays.create_or_update( resource_group_name, namespace_name, wcfrelay_name, wcfrelayupdateparameter) assert updatewcfrelayresponse.name == wcfrelay_name assert updatewcfrelayresponse.requires_transport_security == True assert updatewcfrelayresponse.requires_client_authorization == True assert updatewcfrelayresponse.user_metadata == "User data for WcfRelay updated" # Create a new authorizationrule authoRule_name = "testingauthrulepy" createwcfrelayauthorule = self.relay_client.wcf_relays.create_or_update_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, {"rights": [AccessRights('Send'), AccessRights('Listen')]}) assert createwcfrelayauthorule.name, authoRule_name == "Authorization rule name not as created - create_or_update_authorization_rule " assert len(createwcfrelayauthorule.rights) == 2 # Get the created authorizationrule getwcfrelayauthorule = self.relay_client.wcf_relays.get_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) assert getwcfrelayauthorule.name, authoRule_name == "Authorization rule name not as passed as parameter - get_authorization_rule " assert len( getwcfrelayauthorule.rights ), 2 == "Access rights mis match as created - get_authorization_rule " # update the rights of the authorizatiorule getwcfrelayauthorule.rights.append('Manage') updatewcfrelayauthorule = self.relay_client.wcf_relays.create_or_update_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, getwcfrelayauthorule) assert updatewcfrelayauthorule.name, authoRule_name == "Authorization rule name not as passed as parameter for update call - create_or_update_authorization_rule " assert len( updatewcfrelayauthorule.rights ), 3 == "Access rights mis match as updated - create_or_update_authorization_rule " #list all the authorization ruels for the given namespace wcfrelayauthorulelist = list( self.relay_client.wcf_relays.list_authorization_rules( resource_group_name, namespace_name, wcfrelay_name)) assert len( wcfrelayauthorulelist ), 1 == "number of authorization rule mismatch with the created + default = 2 - list_authorization_rules" #List keys for the authorization rule listkeysauthorizationrule = self.relay_client.wcf_relays.list_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) assert listkeysauthorizationrule is not None # regenerate Keys for authorizationrule - Primary regenratePrimarykeyauthorizationrule = self.relay_client.wcf_relays.regenerate_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, {"key_type": 'PrimaryKey'}) assert listkeysauthorizationrule.primary_key != regenratePrimarykeyauthorizationrule.primary_key # regenerate Keys for authorizationrule - Primary regenrateSecondarykeyauthorizationrule = self.relay_client.wcf_relays.regenerate_keys( resource_group_name, namespace_name, wcfrelay_name, authoRule_name, {"key_type": 'SecondaryKey'}) assert listkeysauthorizationrule.secondary_key != regenrateSecondarykeyauthorizationrule.secondary_key # delete the authorizationrule self.relay_client.wcf_relays.delete_authorization_rule( resource_group_name, namespace_name, wcfrelay_name, authoRule_name) # Delete the created WcfRelay getwcfrelayresponse = self.relay_client.wcf_relays.delete( resource_group_name, namespace_name, wcfrelay_name) # Delete the create namespace self.relay_client.namespaces.begin_delete(resource_group_name, namespace_name).result()