本文整理汇总了Python中networkapi.requisicaovips.models.RequisicaoVips.ipv6方法的典型用法代码示例。如果您正苦于以下问题:Python RequisicaoVips.ipv6方法的具体用法?Python RequisicaoVips.ipv6怎么用?Python RequisicaoVips.ipv6使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类networkapi.requisicaovips.models.RequisicaoVips
的用法示例。
在下文中一共展示了RequisicaoVips.ipv6方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: handle_post
# 需要导入模块: from networkapi.requisicaovips.models import RequisicaoVips [as 别名]
# 或者: from networkapi.requisicaovips.models.RequisicaoVips import ipv6 [as 别名]
def handle_post(self, request, user, *args, **kwargs):
"""Treat requests POST to insert request VIP.
URLs: /requestvip/
deprecated:: Use the new rest API
"""
self.log.info("Add request VIP")
try:
# Load XML data
xml_map, attrs_map = loads(
request.raw_post_data, ['real', 'reals_weight', 'reals_priority', 'porta'])
# XML data format
networkapi_map = xml_map.get('networkapi')
if networkapi_map is None:
return self.response_error(3, u'There is no value to the networkapi tag of XML request.')
vip_map = networkapi_map.get('vip')
if vip_map is None:
return self.response_error(3, u'There is no value to the vip tag of XML request.')
# User permission
if not has_perm(user, AdminPermission.VIPS_REQUEST, AdminPermission.WRITE_OPERATION):
self.log.error(
u'User does not have permission to perform the operation.')
raise UserNotAuthorizedError(None)
# Valid Ipv4 and Ipv6 ID
if (vip_map.get('id_ipv4') is None and vip_map.get('id_ipv6') is None):
self.log.error(
u'The id_ipv4 and id_ipv6 parameter is not a valid value: %s.', vip_map.get('id_ipv4'))
raise InvalidValueError(
None, 'id_ipv4 e id_vip6', vip_map.get('id_ipv4'))
if (vip_map.get('id_ipv4') != None):
if not is_valid_int_greater_zero_param(vip_map.get('id_ipv4')):
self.log.error(
u'The id_ipv4 parameter is not a valid value: %s.', vip_map.get('id_ipv4'))
raise InvalidValueError(
None, 'id_ipv4', vip_map.get('id_ipv4'))
if (vip_map.get('id_ipv6') != None):
if not is_valid_int_greater_zero_param(vip_map.get('id_ipv6')):
self.log.error(
u'The id_ipv6 parameter is not a valid value: %s.', vip_map.get('id_ipv6'))
raise InvalidValueError(
None, 'id_ipv6', vip_map.get('id_ipv6'))
# Valid maxcon
if not is_valid_int_greater_equal_zero_param(vip_map.get('maxcon')):
self.log.error(
u'The maxcon parameter is not a valid value: %s.', vip_map.get('maxcon'))
raise InvalidValueError(None, 'maxcon', vip_map.get('maxcon'))
vip = RequisicaoVips()
finalidade = vip_map.get('finalidade')
cliente = vip_map.get('cliente')
ambiente = vip_map.get('ambiente')
try:
evip = EnvironmentVip.get_by_values(
finalidade, cliente, ambiente)
except Exception, e:
raise EnvironmentVipNotFoundError(
e, 'The fields finality or client or ambiente is None')
# Valid real names and real ips of real server
if vip_map.get('reals') is not None:
for real in vip_map.get('reals').get('real'):
ip_aux_error = real.get('real_ip')
equip_aux_error = real.get('real_name')
if equip_aux_error is not None:
equip = Equipamento.get_by_name(equip_aux_error)
else:
self.log.error(
u'The real_name parameter is not a valid value: None.')
raise InvalidValueError(None, 'real_name', 'None')
# Valid Real
RequisicaoVips.valid_real_server(
ip_aux_error, equip, evip, False)
# Valid reals_prioritys
vip_map, code = vip.valid_values_reals_priority(vip_map)
if code is not None:
return self.response_error(code)
# Valid reals_weight
vip_map, code = vip.valid_values_reals_weight(vip_map)
if code is not None:
return self.response_error(code)
# Existing IPv4 ID
if vip_map.get('id_ipv4') is not None:
#.........这里部分代码省略.........
示例2: new_to_old
# 需要导入模块: from networkapi.requisicaovips.models import RequisicaoVips [as 别名]
# 或者: from networkapi.requisicaovips.models.RequisicaoVips import ipv6 [as 别名]
def new_to_old(vp):
from networkapi.api_vip_request.models import VipRequestDSCP
from networkapi.requisicaovips.models import DsrL3_to_Vip, \
RequisicaoVips, VipPortToPool
try:
vip_map = dict()
vip = RequisicaoVips()
vip.id = vp.id
vip.ip = vp.ipv4 if vp.ipv4 else None
vip.ipv6 = vp.ipv6 if vp.ipv6 else None
vip_map['ip'] = vp.ipv4 if vp.ipv4 else None
vip_map['ipv6'] = vp.ipv6 if vp.ipv6 else None
vip_map['finalidade'] = vp.environmentvip.finalidade_txt
vip_map['cliente'] = vp.environmentvip.cliente_txt
vip_map['ambiente'] = vp.environmentvip.ambiente_p44_txt
for vp_optionvip in vp.viprequestoptionvip_set.all():
if vp_optionvip.optionvip.tipo_opcao == u'Persistencia':
vip_map['persistencia'] = vp_optionvip.optionvip.nome_opcao_txt
if vp_optionvip.optionvip.tipo_opcao == u'timeout':
vip_map['timeout'] = vp_optionvip.optionvip.nome_opcao_txt
if vp_optionvip.optionvip.tipo_opcao == u'cache':
vip_map['cache'] = vp_optionvip.optionvip.nome_opcao_txt
if vp_optionvip.optionvip.tipo_opcao == u'Retorno de trafego':
vip_map['trafficreturn'] = vp_optionvip.optionvip.id
vip.trafficreturn = vp_optionvip.optionvip
vip_map['host'] = vp.name
vip_map['areanegocio'] = vp.business
vip_map['nome_servico'] = vp.service
vip_map['vip_ports_to_pools'] = list()
ports = vp.viprequestport_set.all()
# delete old ports
pools_current = VipPortToPool.get_by_vip_id(vip.id)
pools_ids = [pool.id for pool in pools_current]
ports_ids = [pt.id for pt in ports]
ids_to_del = list(set(pools_ids) - set(ports_ids))
pools_current.filter(id__in=ids_to_del).delete()
vip.vip_criado = vp.created
vip.validado = True
vip.save()
for port in ports:
pools = port.viprequestportpool_set.all()
for pool in pools:
if pool.optionvip.nome_opcao_txt in (u'default_vip'):
vip_port = {
'id': port.id,
'requisicao_vip': vip,
'server_pool': pool.server_pool,
'port_vip': port.port,
'identifier': port.identifier,
}
vip_map['vip_ports_to_pools'].append(vip_port)
vip_port_obj = VipPortToPool(**vip_port)
vip_port_obj.save()
if int(vip_map['trafficreturn']) == 48:
dsrl3 = VipRequestDSCP.objects.get(vip_request=vp)
try:
vp_dsrl3 = DsrL3_to_Vip.get_by_vip_id(vip.id)
except:
vp_dsrl3 = DsrL3_to_Vip()
vp_dsrl3.requisicao_vip_id = vip.id
vp_dsrl3.id_dsrl3 = dsrl3.dscp
vp_dsrl3.save()
else:
try:
vp_dsrl3 = DsrL3_to_Vip.get_by_vip_id(vip.id)
vp_dsrl3.delete()
except:
pass
vip.set_new_variables(vip_map)
vip.save()
except Exception, e:
log.error(e)
raise e