diff options
author | Ben Nemec <bnemec@redhat.com> | 2016-04-12 15:34:15 +0000 |
---|---|---|
committer | Ben Nemec <bnemec@redhat.com> | 2016-04-12 15:34:15 +0000 |
commit | 2af4ee4b873b30d56c24cf1dfcad7bfabfedab37 (patch) | |
tree | ae99743fd916efdf78f80ae4d5121b4efbe6065e /os_net_config/utils.py | |
parent | 1134091ff1a6a0fc9f8dc6fe4d70bf0274728fdd (diff) |
Normalize operstate value for interfaces
The previous check for an interface operstate only looked for the
literal "UP" in caps, but in my environments I'm seeing operstate
returned as "up" in lower-case, which causes the _is_active_nic
check to fail incorrectly. Example:
[root@overcloud-controller-0 heat-admin]# cat /sys/class/net/eth0/operstate
up
In this environment os-net-config is failing with the exception
in the linked bug.
Change-Id: I85c2d074ce43673c691523ca146ff7cdfdf1c7ca
Closes-Bug: 1569403
Diffstat (limited to 'os_net_config/utils.py')
-rw-r--r-- | os_net_config/utils.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/os_net_config/utils.py b/os_net_config/utils.py index da7ab11..4e25d30 100644 --- a/os_net_config/utils.py +++ b/os_net_config/utils.py @@ -60,13 +60,13 @@ def _is_active_nic(interface_name): operstate = None with open(_SYS_CLASS_NET + '/%s/operstate' % interface_name, 'r') as f: - operstate = f.read().rstrip() + operstate = f.read().rstrip().lower() address = None with open(_SYS_CLASS_NET + '/%s/address' % interface_name, 'r') as f: address = f.read().rstrip() - if has_device_dir and operstate == 'UP' and address: + if has_device_dir and operstate == 'up' and address: return True else: return False |