SHA256
1
0
forked from pool/cloud-init
cloud-init/cloud-init-write-routes.patch

186 lines
7.8 KiB
Diff
Raw Normal View History

--- cloudinit/distros/__init__.py.orig
+++ cloudinit/distros/__init__.py
@@ -220,6 +220,15 @@ class Distro(persistence.CloudInitPickle
network_state = parse_net_config_data(netconfig)
try:
self._write_network_state(network_state)
+ # The sysconfig renderer has no route writing implementation
+ # for SUSE yet use the old code for now that depends on the
+ # raw config.
+ try:
+ # Only exists for SUSE distro via this patch all other
+ # implementations throw which breaks testing
+ self._write_routes(netconfig)
+ except AttributeError:
+ pass
except NotImplementedError:
# backwards compat until all distros have apply_network_config
return self._apply_network_from_network_config(
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
--- cloudinit/distros/opensuse.py.orig
+++ cloudinit/distros/opensuse.py
- Update to version 21.2 (bsc#1186004) + Remove patches included upstream: - cloud-init-azure-def-usr-pass.patch - cloud-init-after-kvp.diff - cloud-init-recognize-hpc.patch - use_arroba_to_include_sudoers_directory-bsc_1181283.patch - cloud-init-bonding-opts.patch - cloud-init-log-file-mode.patch - cloud-init-no-pwd-in-log.patch - 0001-templater-drop-Jinja-Python-2-compatibility-shim.patch + Remove cloud-init-sle12-compat.patch, version in SLE 12 is frozen to 20.2 + Remove cloud-init-tests-set-exec.patch no longer needed + Forward port: - cloud-init-write-routes.patch - cloud-init-break-resolv-symlink.patch - cloud-init-sysconf-path.patch - cloud-init-no-tempnet-oci.patch + Add \r\n check for SSH keys in Azure (#889) + Revert "Add support to resize rootfs if using LVM (#721)" (#887) (LP: #1922742) + Add Vultaire as contributor (#881) [Paul Goins] + Azure: adding support for consuming userdata from IMDS (#884) [Anh Vo] + test_upgrade: modify test_upgrade_package to run for more sources (#883) + Fix chef module run failure when chef_license is set (#868) [Ben Hughes] + Azure: Retry net metadata during nic attach for non-timeout errs (#878) [aswinrajamannar] + Azure: Retrieve username and hostname from IMDS (#865) [Thomas Stringer] + Azure: eject the provisioning iso before reporting ready (#861) [Anh Vo] + Use `partprobe` to re-read partition table if available (#856) [Nicolas Bock] (LP: #1920939) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=189
2021-08-19 14:25:42 +02:00
@@ -8,9 +8,12 @@
#
# This file is part of cloud-init. See LICENSE file for license information.
+import logging
+
from cloudinit import distros
from cloudinit.distros.parsers.hostname import HostnameConf
+from cloudinit.net.network_state import mask_to_net_prefix
from cloudinit import helpers
- Update to version 21.2 (bsc#1186004) + Remove patches included upstream: - cloud-init-azure-def-usr-pass.patch - cloud-init-after-kvp.diff - cloud-init-recognize-hpc.patch - use_arroba_to_include_sudoers_directory-bsc_1181283.patch - cloud-init-bonding-opts.patch - cloud-init-log-file-mode.patch - cloud-init-no-pwd-in-log.patch - 0001-templater-drop-Jinja-Python-2-compatibility-shim.patch + Remove cloud-init-sle12-compat.patch, version in SLE 12 is frozen to 20.2 + Remove cloud-init-tests-set-exec.patch no longer needed + Forward port: - cloud-init-write-routes.patch - cloud-init-break-resolv-symlink.patch - cloud-init-sysconf-path.patch - cloud-init-no-tempnet-oci.patch + Add \r\n check for SSH keys in Azure (#889) + Revert "Add support to resize rootfs if using LVM (#721)" (#887) (LP: #1922742) + Add Vultaire as contributor (#881) [Paul Goins] + Azure: adding support for consuming userdata from IMDS (#884) [Anh Vo] + test_upgrade: modify test_upgrade_package to run for more sources (#883) + Fix chef module run failure when chef_license is set (#868) [Ben Hughes] + Azure: Retry net metadata during nic attach for non-timeout errs (#878) [aswinrajamannar] + Azure: Retrieve username and hostname from IMDS (#865) [Thomas Stringer] + Azure: eject the provisioning iso before reporting ready (#861) [Anh Vo] + Use `partprobe` to re-read partition table if available (#856) [Nicolas Bock] (LP: #1920939) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=189
2021-08-19 14:25:42 +02:00
from cloudinit import subp
@@ -19,6 +22,7 @@ from cloudinit import util
from cloudinit.distros import rhel_util as rhutil
from cloudinit.settings import PER_INSTANCE
+LOG = logging.getLogger(__name__)
class Distro(distros.Distro):
clock_conf_fn = '/etc/sysconfig/clock'
@@ -168,6 +172,143 @@ class Distro(distros.Distro):
conf.set_hostname(hostname)
util.write_file(filename, str(conf), 0o644)
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ def _write_routes_v1(self, netconfig):
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ """Write route files, not part of the standard distro interface"""
+ # Due to the implementation of the sysconfig renderer default routes
+ # are setup in ifcfg-* files. But this does not work on SLES or
+ # openSUSE https://bugs.launchpad.net/cloud-init/+bug/1812117
+ # this is a very hacky way to get around the problem until a real
+ # solution is found in the sysconfig renderer
+ device_configs = netconfig.get('config', [])
+ default_nets = ('::', '0.0.0.0')
+ for config in device_configs:
+ if_name = config.get('name')
+ subnets = config.get('subnets', [])
+ config_routes = ''
+ has_default_route = False
+ seen_default_gateway = None
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ for subnet in subnets:
+ # Render the default gateway if it is present
+ gateway = subnet.get('gateway')
+ if gateway:
+ config_routes += ' '.join(
+ ['default', gateway, '-', '-\n']
+ )
+ has_default_route = True
+ if not seen_default_gateway:
+ seen_default_gateway = gateway
+ # Render subnet routes
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ routes = subnet.get('routes', [])
+ for route in routes:
+ dest = route.get('destination') or route.get('network')
+ if not dest or dest in default_nets:
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ dest = 'default'
+ if not has_default_route:
+ has_default_route = True
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ if dest != 'default':
+ netmask = route.get('netmask')
+ if netmask:
+ prefix = mask_to_net_prefix(netmask)
+ dest += '/' + str(prefix)
+ if '/' not in dest:
+ LOG.warning(
+ 'Skipping route; has no prefix "%s"', dest
+ )
+ continue
+ gateway = route.get('gateway')
+ if not gateway:
+ LOG.warning(
+ 'Missing gateway for "%s", skipping', dest
+ )
+ continue
+ if (
+ dest == 'default' and
+ has_default_route and
+ gateway == seen_default_gateway
+ ):
+ dest_info = dest
+ if gateway:
+ dest_info = ' '.join([dest, gateway, '-', '-'])
+ LOG.warning(
+ '%s already has default route, skipping "%s"',
+ if_name, dest_info
+ )
+ continue
+ config_routes += ' '.join(
+ [dest, gateway, '-', '-\n']
+ )
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
+ if config_routes:
+ route_file = '/etc/sysconfig/network/ifroute-%s' % if_name
+ util.write_file(route_file, config_routes)
+
+ def _render_route_string(self, netconfig_route):
+ route_to = netconfig_route.get('to', None)
+ route_via = netconfig_route.get('via', None)
+ route_metric = netconfig_route.get('metric', None)
+ route_string = ''
+
+ if route_to and route_via:
+ route_string = ' '.join([route_to, route_via, '-', '-'])
+ if route_metric:
+ route_string += ' metric {}\n'.format(route_metric)
+ else:
+ route_string += '\n'
+ else:
+ LOG.warning('invalid route definition, skipping route')
+
+ return route_string
+
+ def _write_routes_v2(self, netconfig):
+ for device_type in netconfig:
+ if device_type == 'version':
+ continue
+
+ if device_type == 'routes':
+ # global static routes
+ config_routes = ''
+ for route in netconfig['routes']:
+ config_routes += self._render_route_string(route)
+ if config_routes:
+ route_file = '/etc/sysconfig/network/routes'
+ util.write_file(route_file, config_routes)
+ else:
+ devices = netconfig[device_type]
+ for device_name in devices:
+ config_routes = ''
+ device_config = devices[device_name]
+ try:
+ gateways = [
+ v for k, v in device_config.items()
+ if 'gateway' in k
+ ]
+ for gateway in gateways:
+ config_routes += ' '.join(
+ ['default', gateway, '-', '-\n']
+ )
+ for route in device_config.get('routes', []):
+ config_routes += self._render_route_string(route)
+ if config_routes:
+ route_file = '/etc/sysconfig/network/ifroute-{}'.format(
+ device_name
+ )
+ util.write_file(route_file, config_routes)
+ except Exception:
+ # the parser above epxects another level of nesting
+ # which should be there in case it's properly
+ # formatted; if not we may get an exception on items()
+ pass
+
+ def _write_routes(self, netconfig):
+ netconfig_ver = netconfig.get('version')
+ if netconfig_ver == 1:
+ self._write_routes_v1(netconfig)
+ elif netconfig_ver == 2:
+ self._write_routes_v2(netconfig)
+ else:
+ LOG.warning(
+ 'unsupported or missing netconfig version, not writing routes'
+ )
+
- Update to version 18.5 (bsc#1121878, boo#1116767) + Remove 0001-Fix-the-service-order-for-SUSE-distributions.patch 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch included upstream + Forward port cloud-init-sysconf-ethsetup.patch + Add cloud-init-write-routes.patch + tests: add Disco release [Joshua Powers] + net: render 'metric' values in per-subnet routes (LP: #1805871) + write_files: add support for appending to files. [James Baxter] + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64. (LP: #1805854) + dhclient-hook: cleanups, tests and fix a bug on 'down' event. + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117) + ovf: Fix ovf network config generation gateway/routes (LP: #1806103) + azure: detect vnet migration via netlink media change event [Tamilmani Manoharan] + Azure: fix copy/paste error in error handling when reading azure ovf. + [Adam DePue] + tests: fix incorrect order of mocks in test_handle_zfs_root. + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen] + OVF: identify label iso9660 filesystems with label 'OVF ENV'. + logs: collect-logs ignore instance-data-sensitive.json on non-root user (LP: #1805201) + net: Ephemeral*Network: add connectivity check via URL + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598) + resizefs: Prefix discovered devpath with '/dev/' when path does not exist [Igor Galić] + azure: retry imds polling on requests.Timeout (LP: #1800223) OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
2019-01-18 10:50:54 +01:00
@property
def preferred_ntp_clients(self):
"""The preferred ntp client is dependent on the version."""