NSXv3: Change reponse code for L7 redirect and reject
Upstream only supports the following the following response code: - REDIRECT_TO_URL: 302 - REJECT: 403 Change in driver to use these code only. Also, this patch fixes LB HTTP phase for redirect based on nsxv3 platform enforcement. Change-Id: I25d0e5e7165200f2f6c56bea848a0318560bca1b
This commit is contained in:
parent
54a809c4fa
commit
05dbe6be4e
@ -90,11 +90,6 @@ LB_STATS_MAP = {'active_connections': 'current_sessions',
|
||||
'bytes_in': 'bytes_in',
|
||||
'bytes_out': 'bytes_out',
|
||||
'total_connections': 'total_sessions'}
|
||||
LB_SELECT_POOL_ACTION = 'LbSelectPoolAction'
|
||||
LB_HTTP_REDIRECT_ACTION = 'LbHttpRedirectAction'
|
||||
LB_REJECT_ACTION = 'LbHttpRejectAction'
|
||||
LB_HTTP_REDIRECT_STATUS = '301'
|
||||
LB_HTTP_REJECT_STATUS = '501'
|
||||
LR_ROUTER_TYPE = 'os-neutron-router-id'
|
||||
LR_PORT_TYPE = 'os-neutron-rport-id'
|
||||
DEFAULT_LB_SIZE = 'SMALL'
|
||||
@ -105,6 +100,11 @@ LB_RULE_MATCH_TYPE = {
|
||||
L7_RULE_COMPARE_TYPE_EQUAL_TO: 'EQUALS',
|
||||
L7_RULE_COMPARE_TYPE_REGEX: 'REGEX',
|
||||
L7_RULE_COMPARE_TYPE_STARTS_WITH: 'STARTS_WITH'}
|
||||
LB_SELECT_POOL_ACTION = 'LbSelectPoolAction'
|
||||
LB_HTTP_REDIRECT_ACTION = 'LbHttpRedirectAction'
|
||||
LB_REJECT_ACTION = 'LbHttpRejectAction'
|
||||
LB_HTTP_REDIRECT_STATUS = '302'
|
||||
LB_HTTP_REJECT_STATUS = '403'
|
||||
LB_RULE_HTTP_REQUEST_REWRITE = 'HTTP_REQUEST_REWRITE'
|
||||
LB_RULE_HTTP_FORWARDING = 'HTTP_FORWARDING'
|
||||
LB_RULE_HTTP_RESPONSE_REWRITE = 'HTTP_RESPONSE_REWRITE'
|
||||
|
@ -105,21 +105,12 @@ class EdgeL7RuleManager(base_mgr.Nsxv3LoadbalancerBaseManager):
|
||||
msg=msg)
|
||||
return actions
|
||||
|
||||
@log_helpers.log_method_call
|
||||
def _get_rule_phase(self, rule):
|
||||
l7policy = rule.policy
|
||||
if (l7policy.action == lb_const.L7_POLICY_ACTION_REDIRECT_TO_POOL or
|
||||
l7policy.action == lb_const.L7_POLICY_ACTION_REJECT):
|
||||
return lb_const.LB_RULE_HTTP_FORWARDING
|
||||
if l7policy.action == lb_const.L7_POLICY_ACTION_REDIRECT_TO_URL:
|
||||
return lb_const.LB_RULE_HTTP_REQUEST_REWRITE
|
||||
|
||||
@log_helpers.log_method_call
|
||||
def _convert_l7policy_to_lb_rule(self, context, rule):
|
||||
body = {}
|
||||
body['match_conditions'] = self._get_rule_match_conditions(rule)
|
||||
body['actions'] = self._get_rule_actions(context, rule)
|
||||
body['phase'] = self._get_rule_phase(rule)
|
||||
body['phase'] = lb_const.LB_RULE_HTTP_FORWARDING
|
||||
body['match_strategy'] = 'ANY'
|
||||
|
||||
return body
|
||||
|
Loading…
x
Reference in New Issue
Block a user