Set the ip tool path for each OS
The ip tool on different operating systems is in different paths. This PR creates a hash with each distro family which is used to set the path correctly across each distro. Change-Id: I0f691865b569d7e8b72a15d45cd8547dea45d5d5 Signed-off-by: Kevin Carter <kevin@cloudnull.com>
This commit is contained in:
parent
a3e94effd3
commit
d21a7d5d9f
|
@ -107,9 +107,14 @@
|
||||||
# such, we use a local connection and become.
|
# such, we use a local connection and become.
|
||||||
connection: local
|
connection: local
|
||||||
become: yes
|
become: yes
|
||||||
|
vars:
|
||||||
|
iptool_path:
|
||||||
|
debian: "/sbin/ip"
|
||||||
|
gentoo: "/bin/ip"
|
||||||
|
redhat: "/usr/sbin/ip"
|
||||||
|
suse: "/bin/ip"
|
||||||
vars_files:
|
vars_files:
|
||||||
- test-vars.yml
|
- test-vars.yml
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- name: Run the systemd-networkd role
|
- name: Run the systemd-networkd role
|
||||||
include_role:
|
include_role:
|
||||||
|
@ -176,15 +181,15 @@
|
||||||
{% set veths = ['-/sbin/ethtool -K ' + (bootstrap_host_public_interface | default(ansible_default_ipv4['alias'])) + ' gso off sg off tso off tx off'] %}
|
{% set veths = ['-/sbin/ethtool -K ' + (bootstrap_host_public_interface | default(ansible_default_ipv4['alias'])) + ' gso off sg off tso off tx off'] %}
|
||||||
{% for interface in (bridges | default([])) %}
|
{% for interface in (bridges | default([])) %}
|
||||||
{% if interface is string %}
|
{% if interface is string %}
|
||||||
{% set _ = veths.append('-/usr/sbin/ip link set ' + interface + ' up') %}
|
{% set _ = veths.append('-' + iptool_path[ansible_os_family | lower] + ' link set ' + interface + ' up') %}
|
||||||
{% set _ = veths.append('-/sbin/ethtool -K ' + interface + ' gso off sg off tso off tx off') %}
|
{% set _ = veths.append('-/sbin/ethtool -K ' + interface + ' gso off sg off tso off tx off') %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% set interface_name = (interface.name | default('br-mgmt')) %}
|
{% set interface_name = (interface.name | default('br-mgmt')) %}
|
||||||
{% set _ = veths.append('-/usr/sbin/ip link set ' + interface_name + ' up') %}
|
{% set _ = veths.append('-' + iptool_path[ansible_os_family | lower] + ' link set ' + interface_name + ' up') %}
|
||||||
{% set _ = veths.append('-/sbin/ethtool -K ' + interface_name + ' gso off sg off tso off tx off') %}
|
{% set _ = veths.append('-/sbin/ethtool -K ' + interface_name + ' gso off sg off tso off tx off') %}
|
||||||
{% if interface.veth_peer is defined %}
|
{% if interface.veth_peer is defined %}
|
||||||
{% set _ = veths.append('-/usr/sbin/ip link set ' + interface_name + '-veth up') %}
|
{% set _ = veths.append('-' + iptool_path[ansible_os_family | lower] + ' link set ' + interface_name + '-veth up') %}
|
||||||
{% set _ = veths.append('-/usr/sbin/ip link set ' + interface.veth_peer + ' up') %}
|
{% set _ = veths.append('-' + iptool_path[ansible_os_family | lower] + ' link set ' + interface.veth_peer + ' up') %}
|
||||||
{% set _ = veths.append('-/sbin/ethtool -K ' + interface.veth_peer + ' gso off sg off tso off tx off') %}
|
{% set _ = veths.append('-/sbin/ethtool -K ' + interface.veth_peer + ' gso off sg off tso off tx off') %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
Loading…
Reference in New Issue