Merge "Add support for SCTP"
This commit is contained in:
commit
bd5f48ca18
@ -73,6 +73,11 @@
|
|||||||
expect(listener.protocol_port).toBeUndefined();
|
expect(listener.protocol_port).toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should update port on protocol change to SCTP', function() {
|
||||||
|
ctrl.protocolChange('SCTP');
|
||||||
|
expect(listener.protocol_port).toBeUndefined();
|
||||||
|
});
|
||||||
|
|
||||||
it('should update member ports on protocol change to TERMINATED_HTTPS', function() {
|
it('should update member ports on protocol change to TERMINATED_HTTPS', function() {
|
||||||
ctrl.protocolChange('TERMINATED_HTTPS');
|
ctrl.protocolChange('TERMINATED_HTTPS');
|
||||||
|
|
||||||
@ -105,6 +110,14 @@
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should update member ports on protocol change to SCTP', function() {
|
||||||
|
ctrl.protocolChange('SCTP');
|
||||||
|
|
||||||
|
scope.model.members.concat(scope.model.spec.members).forEach(function(member) {
|
||||||
|
expect(member.port).toBeUndefined();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
})();
|
})();
|
||||||
|
@ -61,7 +61,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" ng-if="model.spec.listener.protocol !== 'UDP'">
|
<div class="row" ng-if="model.spec.listener.protocol !== 'UDP' && model.spec.listener.protocol !== 'SCTP'">
|
||||||
|
|
||||||
<div class="col-xs-12 col-sm-8 col-md-6">
|
<div class="col-xs-12 col-sm-8 col-md-6">
|
||||||
<div class="form-group required">
|
<div class="form-group required">
|
||||||
@ -91,7 +91,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" ng-if="model.spec.listener.protocol !== 'UDP'">
|
<div class="row" ng-if="model.spec.listener.protocol !== 'UDP' && model.spec.listener.protocol !== 'SCTP'">
|
||||||
|
|
||||||
<div class="col-xs-12 col-sm-8 col-md-6">
|
<div class="col-xs-12 col-sm-8 col-md-6">
|
||||||
<div class="form-group required">
|
<div class="form-group required">
|
||||||
|
@ -86,16 +86,16 @@
|
|||||||
members: [],
|
members: [],
|
||||||
networks: {},
|
networks: {},
|
||||||
flavors: {},
|
flavors: {},
|
||||||
listenerProtocols: ['HTTP', 'TCP', 'TERMINATED_HTTPS', 'HTTPS', 'UDP'],
|
listenerProtocols: ['HTTP', 'TCP', 'TERMINATED_HTTPS', 'HTTPS', 'UDP', 'SCTP'],
|
||||||
availability_zones: {},
|
availability_zones: {},
|
||||||
l7policyActions: ['REJECT', 'REDIRECT_TO_URL', 'REDIRECT_TO_POOL'],
|
l7policyActions: ['REJECT', 'REDIRECT_TO_URL', 'REDIRECT_TO_POOL'],
|
||||||
l7ruleTypes: ['HOST_NAME', 'PATH', 'FILE_TYPE', 'HEADER', 'COOKIE'],
|
l7ruleTypes: ['HOST_NAME', 'PATH', 'FILE_TYPE', 'HEADER', 'COOKIE'],
|
||||||
l7ruleCompareTypes: ['REGEX', 'EQUAL_TO', 'STARTS_WITH', 'ENDS_WITH', 'CONTAINS'],
|
l7ruleCompareTypes: ['REGEX', 'EQUAL_TO', 'STARTS_WITH', 'ENDS_WITH', 'CONTAINS'],
|
||||||
l7ruleFileTypeCompareTypes: ['REGEX', 'EQUAL_TO'],
|
l7ruleFileTypeCompareTypes: ['REGEX', 'EQUAL_TO'],
|
||||||
poolProtocols: ['HTTP', 'HTTPS', 'PROXY', 'PROXYV2', 'TCP', 'UDP'],
|
poolProtocols: ['HTTP', 'HTTPS', 'PROXY', 'PROXYV2', 'TCP', 'UDP', 'SCTP'],
|
||||||
methods: ['LEAST_CONNECTIONS', 'ROUND_ROBIN', 'SOURCE_IP'],
|
methods: ['LEAST_CONNECTIONS', 'ROUND_ROBIN', 'SOURCE_IP'],
|
||||||
types: ['SOURCE_IP', 'HTTP_COOKIE', 'APP_COOKIE'],
|
types: ['SOURCE_IP', 'HTTP_COOKIE', 'APP_COOKIE'],
|
||||||
monitorTypes: ['HTTP', 'HTTPS', 'PING', 'TCP', 'TLS-HELLO', 'UDP-CONNECT'],
|
monitorTypes: ['HTTP', 'HTTPS', 'PING', 'TCP', 'TLS-HELLO', 'UDP-CONNECT', 'SCTP'],
|
||||||
monitorMethods: ['GET', 'HEAD', 'POST', 'PUT', 'DELETE',
|
monitorMethods: ['GET', 'HEAD', 'POST', 'PUT', 'DELETE',
|
||||||
'TRACE', 'OPTIONS', 'PATCH', 'CONNECT'],
|
'TRACE', 'OPTIONS', 'PATCH', 'CONNECT'],
|
||||||
certificates: [],
|
certificates: [],
|
||||||
|
@ -495,7 +495,7 @@
|
|||||||
|
|
||||||
it('has array of listener protocols', function() {
|
it('has array of listener protocols', function() {
|
||||||
expect(model.listenerProtocols).toEqual(['HTTP', 'TCP', 'TERMINATED_HTTPS', 'HTTPS',
|
expect(model.listenerProtocols).toEqual(['HTTP', 'TCP', 'TERMINATED_HTTPS', 'HTTPS',
|
||||||
'UDP']);
|
'UDP', 'SCTP']);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('has array of pool lb_algorithms', function() {
|
it('has array of pool lb_algorithms', function() {
|
||||||
@ -508,7 +508,7 @@
|
|||||||
|
|
||||||
it('has array of monitor types', function() {
|
it('has array of monitor types', function() {
|
||||||
expect(model.monitorTypes).toEqual(['HTTP', 'HTTPS', 'PING', 'TCP', 'TLS-HELLO',
|
expect(model.monitorTypes).toEqual(['HTTP', 'HTTPS', 'PING', 'TCP', 'TLS-HELLO',
|
||||||
'UDP-CONNECT']);
|
'UDP-CONNECT', 'SCTP']);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('has array of monitor http_methods', function() {
|
it('has array of monitor http_methods', function() {
|
||||||
@ -866,7 +866,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should initialize listener protocols', function() {
|
it('should initialize listener protocols', function() {
|
||||||
expect(model.listenerProtocols.length).toBe(5);
|
expect(model.listenerProtocols.length).toBe(6);
|
||||||
expect(model.listenerProtocols.indexOf('TERMINATED_HTTPS')).toBe(2);
|
expect(model.listenerProtocols.indexOf('TERMINATED_HTTPS')).toBe(2);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -917,7 +917,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should initialize listener protocols', function() {
|
it('should initialize listener protocols', function() {
|
||||||
expect(model.listenerProtocols.length).toBe(4);
|
expect(model.listenerProtocols.length).toBe(5);
|
||||||
expect(model.listenerProtocols.indexOf('TERMINATED_HTTPS')).toBe(-1);
|
expect(model.listenerProtocols.indexOf('TERMINATED_HTTPS')).toBe(-1);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
<p>
|
<p>
|
||||||
<strong translate>Protocol:</strong>
|
<strong translate>Protocol:</strong>
|
||||||
<translate>
|
<translate>
|
||||||
The protocol for which this pool and its members listen. A valid value is HTTP, HTTPS, PROXY, PROXYV2, TCP or UDP.
|
The protocol for which this pool and its members listen. A valid value is HTTP, HTTPS, PROXY, PROXYV2, TCP, UDP or SCTP.
|
||||||
</translate>
|
</translate>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
@ -66,7 +66,7 @@
|
|||||||
ng-model="model.spec.pool.session_persistence.type">
|
ng-model="model.spec.pool.session_persistence.type">
|
||||||
<option value="">None</option>
|
<option value="">None</option>
|
||||||
<option ng-repeat="type in model.types"
|
<option ng-repeat="type in model.types"
|
||||||
ng-disabled="model.spec.listener.protocol === 'UDP' && type !== 'SOURCE_IP'"
|
ng-disabled="(model.spec.listener.protocol === 'UDP' || model.spec.listener.protocol === 'SCTP') && type !== 'SOURCE_IP'"
|
||||||
value="{$ type $}">
|
value="{$ type $}">
|
||||||
{$ type $}
|
{$ type $}
|
||||||
</option>
|
</option>
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
Add SCTP support in listener protocol and health-monitor type select boxes.
|
Loading…
Reference in New Issue
Block a user