diff options
author | Pierre Blanc <pblanc@redhat.com> | 2016-11-02 08:55:54 -0400 |
---|---|---|
committer | Pierre Blanc <pblanc@redhat.com> | 2016-11-11 13:06:36 -0500 |
commit | 469c0ab91ae550945eb4d0a18ebd284994fde384 (patch) | |
tree | 690eb1b487eb5e02324fc687b7935b6e0d00b82f /os_net_config/objects.py | |
parent | 4fdb0a6a2b355750ae8071e53a74b9257b18eeee (diff) |
Add support for ethtool_opts option
This patch add an optional option to specify
the ETHTOOL_OPTS for each interface.
ETHTOOL_OPTS option will be written to the ifcfg file.
Change-Id: I6b594e89ba6b4c17e8df79def997f6c9ea427a3a
Diffstat (limited to 'os_net_config/objects.py')
-rw-r--r-- | os_net_config/objects.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/os_net_config/objects.py b/os_net_config/objects.py index 0e5ce08..8d7ee4c 100644 --- a/os_net_config/objects.py +++ b/os_net_config/objects.py @@ -279,7 +279,7 @@ class Interface(_BaseOpts): def __init__(self, name, use_dhcp=False, use_dhcpv6=False, addresses=None, routes=None, mtu=None, primary=False, nic_mapping=None, persist_mapping=False, defroute=True, dhclient_args=None, - dns_servers=None): + dns_servers=None, ethtool_opts=None): addresses = addresses or [] routes = routes or [] dns_servers = dns_servers or [] @@ -287,12 +287,14 @@ class Interface(_BaseOpts): routes, mtu, primary, nic_mapping, persist_mapping, defroute, dhclient_args, dns_servers) + self.ethtool_opts = ethtool_opts @staticmethod def from_json(json): name = _get_required_field(json, 'name', 'Interface') opts = _BaseOpts.base_opts_from_json(json) - return Interface(name, *opts) + ethtool_opts = json.get('ethtool_opts', None) + return Interface(name, *opts, ethtool_opts=ethtool_opts) class Vlan(_BaseOpts): @@ -931,7 +933,7 @@ class IbInterface(_BaseOpts): def __init__(self, name, use_dhcp=False, use_dhcpv6=False, addresses=None, routes=None, mtu=None, primary=False, nic_mapping=None, persist_mapping=False, defroute=True, dhclient_args=None, - dns_servers=None): + dns_servers=None, ethtool_opts=None): addresses = addresses or [] routes = routes or [] dns_servers = dns_servers or [] @@ -939,12 +941,14 @@ class IbInterface(_BaseOpts): addresses, routes, mtu, primary, nic_mapping, persist_mapping, defroute, dhclient_args, dns_servers) + self.ethtool_opts = ethtool_opts @staticmethod def from_json(json): name = _get_required_field(json, 'name', 'IbInterface') + ethtool_opts = json.get('ethtool_opts', None) opts = _BaseOpts.base_opts_from_json(json) - return IbInterface(name, *opts) + return IbInterface(name, *opts, ethtool_opts=ethtool_opts) class OvsDpdkPort(_BaseOpts): |