Public bug reported: Not sure why this is showing up now in a number of instances as the code has been there for quite some time. sysconfig.py contains
def available_sysconfig(target=None): expected = ['ifup', 'ifdown'] search = ['/sbin', '/usr/sbin'] for p in expected: if not util.which(p, search=search, target=target): return False expected_paths = [ 'etc/sysconfig/network-scripts/network-functions', 'etc/sysconfig/network-scripts/ifdown-eth'] for p in expected_paths: if not os.path.isfile(util.target_path(target, p)): return False return True Meaning after we find ifup and ifdown the code also looks for files in "/etc/sysconfig/network-scripts" this directory does not exist on SUSE distros causing "available_sysconfig" to return always return "False". Question is why is it necessary to check for the additional files? Could we simply check for "/etc/sysconfig"? For now I added a patch in the SUSE package that modifies the first loop: for p in expected: if not util.which(p, search=search, target=target): return False else: return True ** Affects: cloud-init Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to cloud-init. https://bugs.launchpad.net/bugs/1849378 Title: sysconfig renderer not detected on SLE distros Status in cloud-init: New Bug description: Not sure why this is showing up now in a number of instances as the code has been there for quite some time. sysconfig.py contains def available_sysconfig(target=None): expected = ['ifup', 'ifdown'] search = ['/sbin', '/usr/sbin'] for p in expected: if not util.which(p, search=search, target=target): return False expected_paths = [ 'etc/sysconfig/network-scripts/network-functions', 'etc/sysconfig/network-scripts/ifdown-eth'] for p in expected_paths: if not os.path.isfile(util.target_path(target, p)): return False return True Meaning after we find ifup and ifdown the code also looks for files in "/etc/sysconfig/network-scripts" this directory does not exist on SUSE distros causing "available_sysconfig" to return always return "False". Question is why is it necessary to check for the additional files? Could we simply check for "/etc/sysconfig"? For now I added a patch in the SUSE package that modifies the first loop: for p in expected: if not util.which(p, search=search, target=target): return False else: return True To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-init/+bug/1849378/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp