Merge "Fix default allow filter regexp"
diff --git a/linux/files/ovs_bridge b/linux/files/ovs_bridge
index bf9b74f..40acb04 100644
--- a/linux/files/ovs_bridge
+++ b/linux/files/ovs_bridge
@@ -12,3 +12,6 @@
{%- if bridge.ovs_options is defined %}
ovs_options {{ bridge.ovs_options }}
{%- endif %}
+{%- if bridge_ports %}
+ovs_ports {{ bridge_ports }}
+{%- endif %}
diff --git a/linux/meta/fluentd.yml b/linux/meta/fluentd.yml
index f6d6720..0f73580 100644
--- a/linux/meta/fluentd.yml
+++ b/linux/meta/fluentd.yml
@@ -87,6 +87,14 @@
- name: ident
regexp: '^(.*)$'
result: $1.systemd
+ {%- if pillar.get('telegraf', {}).get('agent', {}).get('enabled', False) %}
+ push_to_telegraf:
+ require_in:
+ - push_to_default
+ tag: 'telegraf.systemd'
+ type: relabel
+ label: telegraf
+ {%- endif %}
push_to_default:
tag: '*.systemd'
type: copy
diff --git a/linux/network/dpdk.sls b/linux/network/dpdk.sls
index 7cc4102..c400831 100644
--- a/linux/network/dpdk.sls
+++ b/linux/network/dpdk.sls
@@ -141,7 +141,45 @@
linux_network_dpdk_bridge_interface_{{ interface_name }}:
cmd.run:
- name: "ovs-vsctl{%- if network.ovs_nowait %} --no-wait{%- endif %} add-br {{ interface_name }} -- set bridge {{ interface_name }} datapath_type=netdev{% if interface.tag is defined %} -- set port {{ interface_name }} tag={{ interface.tag }}{% endif %}"
- - unless: "ovs-vsctl show | grep {{ interface_name }}"
+ - unless: 'ovs-vsctl show | grep "Bridge {{ interface_name }}"'
+
+ {# OVS dpdk needs ip address for vxlan termination on bridge br-prv #}
+ {%- if interface.address is defined %}
+
+{# create override for openvswitch dependency for dpdk br-prv #}
+/etc/systemd/system/ifup@{{ interface_name }}.service.d/override.conf:
+ file.managed:
+ - makedirs: true
+ - require:
+ - cmd: linux_network_dpdk_bridge_interface_{{ interface_name }}
+ - contents: |
+ [Unit]
+ Requires=openvswitch-switch.service
+ After=openvswitch-switch.service
+
+{# enforce ip address and mtu for ovs dpdk br-prv #}
+dpdk_ovs_bridge_{{ interface_name }}:
+ file.managed:
+ - name: /etc/network/interfaces.u/ifcfg-{{ interface_name }}
+ - contents: |
+ auto {{ interface_name }}
+ iface {{ interface_name }} inet static
+ address {{ interface.address }}
+ netmask {{ interface.netmask }}
+ {%- if interface.mtu is defined %}
+ mtu {{ interface.mtu }}
+ {%- endif %}
+ - makedirs: True
+ - require:
+ - file: /etc/systemd/system/ifup@{{ interface_name }}.service.d/override.conf
+
+dpdk_ovs_bridge_up_{{ interface_name }}:
+ cmd.run:
+ - name: ifup {{ interface_name }}
+ - require:
+ - file: dpdk_ovs_bridge_{{ interface_name }}
+
+ {%- endif %}
{%- elif interface.type == 'dpdk_ovs_port' and interface.bridge is defined %}
diff --git a/linux/network/interface.sls b/linux/network/interface.sls
index 65e7bb8..db6cd9f 100644
--- a/linux/network/interface.sls
+++ b/linux/network/interface.sls
@@ -82,43 +82,6 @@
- name: ovs-vsctl{%- if network.ovs_nowait %} --no-wait{%- endif %} add-port {{ interface_name }} {{ int_name }}
{%- endif %}
{%- endfor %}
-
-linux_interfaces_include_{{ interface_name }}:
- file.prepend:
- - name: /etc/network/interfaces
- - text: |
- source /etc/network/interfaces.d/*
- # Workaround for Upstream-Bug: https://github.com/saltstack/salt/issues/40262
- source /etc/network/interfaces.u/*
-
-{# create override for openvswitch dependency for dpdk br-prv #}
-/etc/systemd/system/ifup@{{ interface_name }}.service.d/override.conf:
- file.managed:
- - makedirs: true
- - require:
- - cmd: linux_network_dpdk_bridge_interface_{{ interface_name }}
- - contents: |
- [Unit]
- Requires=openvswitch-switch.service
- After=openvswitch-switch.service
-
-dpdk_ovs_bridge_{{ interface_name }}:
- file.managed:
- - name: /etc/network/interfaces.u/ifcfg-{{ interface_name }}
- - makedirs: True
- - source: salt://linux/files/ovs_bridge
- - defaults:
- bridge: {{ interface|yaml }}
- bridge_name: {{ interface_name }}
- - template: jinja
-
-dpdk_ovs_bridge_up_{{ interface_name }}:
- cmd.run:
- - name: ifup {{ interface_name }}
- - require:
- - file: dpdk_ovs_bridge_{{ interface_name }}
- - file: linux_interfaces_final_include
-
{%- endif %}
{# it is not used for any interface with type preffix dpdk,eg. dpdk_ovs_port #}
@@ -132,6 +95,8 @@
openvswitch_bridge.present:
- name: {{ interface_name }}
+{%- set ovs_ports = [] %}
+
{# add linux network interface into OVS bridge #}
{%- for int_name, int in network.interface.items() %}
@@ -144,6 +109,11 @@
- unless: ovs-vsctl show | grep {{ int_name }}
- name: ovs-vsctl{%- if network.ovs_nowait %} --no-wait{%- endif %} add-port {{ interface_name }} {{ int_name }}
{%- endif %}
+
+{%- if int.bridge is defined and interface_name == int.bridge %}
+{%- do ovs_ports.append(int_name) %}
+{%- endif %}
+
{%- endfor %}
linux_interfaces_include_{{ interface_name }}:
@@ -162,6 +132,7 @@
- defaults:
bridge: {{ interface|yaml }}
bridge_name: {{ interface_name }}
+ bridge_ports: {{ " ".join(ovs_ports) }}
- template: jinja
ovs_bridge_up_{{ interface_name }}: