ovf: do not generate random instance-id for IMC customization path
Cloud-init will not operate properly if the instance-id value changes
on each boot. This is the source of a number of behavioral bugs filed
against cloud-init with OVF datasource. Instead, use a static instance-id
value, iid-vmware-imc, similar to iid-dsovf.
sysconfig: only write resolv.conf if network_state has DNS values
If an OS image provided an /etc/resolv.conf file that was not empty
cloud-init would read and re-write it with a cloud-init header even
if no DNS network configuration was provided (e.g. DHCP only).
This can cause problems for some network services which don't
ignore cloud-init's header.
sysconfig: use distro variant to check if available
The sysconfig renderer used the distro name directly which mean
some variants of distros were not considered supported. Fix this
by using util.system_info()['variant'] instead. Fix the list of
KNOWN_DISTROS value for redhat -> rhel.
systemd/cloud-init.service.tmpl: start after wicked.service
Change the startup order. On SUSE distros cloud-init.service
should start after wicked.service. This reflects the same
start up order other distributions utilize.
Resolve the following lints raised by 'make doc':
- doc/rtd/topics/datasources/zstack.rst:5: D001 Line too long
- doc/rtd/topics/datasources/zstack.rst:10: D001 Line too long
pylintrc: add 'enter_context' to generated-members list
On Bionic (python 3.6.8) we now see no-member errors on untouched code.
This does not reproduce on Xenial (3.5) nor on Eoan (3.7.4). The source
of the failure was the release of astroid 2.3.0 vs. 2.2.5. Resolve this
by adding the member attribute to the generated member list in pylintrc.
This fixes CI failures.