def address(self): if self._values['address'] is None: return None if is_valid_ip(self._values['address']): return compress_address(self._values['address']) else: raise F5ModuleError( "The provided 'address' is not a valid IP address")
def address(self): if self._values['address'] is None: return None if len(self._values['address'].split('%')) > 1: address, rd = self._values['address'].split('%') if is_valid_ip(address): result = '{0}%{1}'.format(compress_address(address), rd) return result else: if is_valid_ip(self._values['address']): return self._values['address'] raise F5ModuleError( "The provided address: {0} is not a valid IP address".format( self._values['address']))
def _format_member_address(self, member): if len(member.split('%')) > 1: address, rd = member.split('%') if is_valid_ip(address): result = '/{0}/{1}%{2}'.format(self.partition, compress_address(address), rd) return result else: if is_valid_ip(member): address = '/{0}/{1}'.format(self.partition, member) return address else: # names must start with alphabetic character, and can contain hyphens and underscores and numbers # no special characters are allowed pattern = re.compile(r'(?!-)[A-Z-].*(?<!-)$', re.IGNORECASE) if pattern.match(member): address = '/{0}/{1}'.format(self.partition, member) return address raise F5ModuleError( 'The provided member address: {0} is not a valid IP address or snat translation name'.format(member) )