changed interface config blocks parsing logic (#50340)

This commit is contained in:
vaneuk 2019-01-29 12:42:31 +03:00 committed by ansibot
parent 8f5cd049d6
commit 844e194aa4

View file

@ -297,14 +297,18 @@ class CliConfiguration(ConfigBase):
def map_config_to_obj(self):
data = get_config(self._module, config_filter='interface')
interfaces = data.strip().rstrip('!').split('!')
data_lines = data.splitlines()
start_indexes = [i for i, e in enumerate(data_lines) if e.startswith('interface')]
end_indexes = [i for i, e in enumerate(data_lines) if e == '!']
if not interfaces:
intf_configs = list()
for start_index, end_index in zip(start_indexes, end_indexes):
intf_configs.append([i.strip() for i in data_lines[start_index:end_index]])
if not intf_configs:
return list()
for interface in interfaces:
intf_config = interface.strip().splitlines()
for intf_config in intf_configs:
name = intf_config[0].strip().split()[1]
active = 'act'