Add a new field VLAN Filter to tap-flow data model
Vlan Filter input parameter is part of tap-flow-create API, which is comma separated list of VLAN Ids which needs to be mirrored. Ref Spec: openstack/neutron-specs/specs/rocky/port-mirroring-sriov-vfs.rst Commit: https://review.openstack.org/#/c/574477/ Change-Id: I627d0fdcf0799e0626e0bb5c8bc7889db90cabcd
This commit is contained in:
parent
b085767b5a
commit
9633eea96d
@ -117,14 +117,16 @@ def show_tap_flow(request, tap_flow_id):
|
||||
return TapFlow(tap_flow.get('tap_flow'))
|
||||
|
||||
|
||||
def create_tap_flow(request, direction, tap_service_id, port_id, **params):
|
||||
def create_tap_flow(request, direction, tap_service_id, port_id,
|
||||
vlan_filter, **params):
|
||||
req_data = {}
|
||||
req_data['tap_flow'] = {
|
||||
'name': params['name'],
|
||||
'description': params['description'],
|
||||
'source_port': port_id,
|
||||
'direction': direction,
|
||||
'tap_service_id': tap_service_id
|
||||
'tap_service_id': tap_service_id,
|
||||
'vlan_filter': vlan_filter
|
||||
}
|
||||
|
||||
res = neutronclient(request).post("/taas/tap_flows", req_data)
|
||||
|
@ -41,6 +41,11 @@ class CreateTapFlowInfoAction(workflows.Action):
|
||||
help_text=_("Whether to mirror the traffic"
|
||||
" leaving or ariving"
|
||||
" at the source port."))
|
||||
vlan_filter = forms.CharField(max_length=255,
|
||||
label=_("VLAN Filter"),
|
||||
required=False,
|
||||
help_text=_("Comma separated list of"
|
||||
"VLAN Ids to be mirrored."))
|
||||
|
||||
class Meta(object):
|
||||
name = _("Information")
|
||||
@ -50,7 +55,7 @@ class CreateTapFlowInfoAction(workflows.Action):
|
||||
|
||||
class CreateTapFlowInfo(workflows.Step):
|
||||
action_class = CreateTapFlowInfoAction
|
||||
contributes = ("tap_flow_name", "description", "direction")
|
||||
contributes = ("tap_flow_name", "description", "direction", "vlan_filter")
|
||||
depends_on = ("tap_service_id",)
|
||||
|
||||
|
||||
@ -115,10 +120,12 @@ class CreateTapFlow(ts_workflows.CreateTapService):
|
||||
direction = data['direction']
|
||||
tap_service_id = self.context.get('tap_service_id')
|
||||
port_id = data['port']
|
||||
vlan_filter = data['vlan_filter']
|
||||
tap_flow = api.taas.create_tap_flow(request,
|
||||
direction,
|
||||
tap_service_id,
|
||||
port_id,
|
||||
vlan_filter,
|
||||
**params)
|
||||
self.context['tap_flow_id'] = tap_flow.id
|
||||
return True
|
||||
|
@ -12,6 +12,8 @@
|
||||
<dd>{{ tap_flow.tap_service_id|default:_("-") }}</dd>
|
||||
<dt>{% trans "Port ID" %}</dt>
|
||||
<dd>{{ tap_flow.source_port|default:_("-") }}</dd>
|
||||
<dt>{% trans "VLAN Filter" %}</dt>
|
||||
<dd>{{ tap_flow.vlan_filter|default:_("None") }}</dd>
|
||||
<dt>{% trans "Project ID" %}</dt>
|
||||
<dd>{{ tap_flow.tenant_id|default:_("-") }}</dd>
|
||||
</dl>
|
||||
|
Loading…
Reference in New Issue
Block a user