summaryrefslogtreecommitdiff
path: root/cloudinit/sources/DataSourceOracle.py
diff options
context:
space:
mode:
authorDaniel Watkins <daniel@daniel-watkins.co.uk>2019-08-19 20:52:54 +0000
committerServer Team CI Bot <josh.powers+server-team-bot@canonical.com>2019-08-19 20:52:54 +0000
commit2c52e6e88b19f5db8d55eb7280ee27703e05d75f (patch)
tree9b28410b1a337106b88bd72926961effe9277e9f /cloudinit/sources/DataSourceOracle.py
parente11b71900e95ec7f90d0da4e588be5c89d97baa9 (diff)
downloadvyos-cloud-init-2c52e6e88b19f5db8d55eb7280ee27703e05d75f.tar.gz
vyos-cloud-init-2c52e6e88b19f5db8d55eb7280ee27703e05d75f.zip
DataSourceOracle: prefer DS network config over initramfs
The Oracle platform provides networking configuration from two sources: * the primary interface configuration comes from the initramfs, because Oracle instance all iSCSI boot * secondary interface configuration comes from an IMDS accessed over HTTP As we need to combine these two sources of network configuration, the default "prefer initramfs config over data source config" behaviour isn't appropriate; we would never get the IMDS interfaces via that route. Instead, the Oracle data source has code to combine these two sources, so we prefer its network configuration over the initramfs configuration. (This is not appropriate default behaviour, because _in general_ data sources won't know how to merge initramfs-provided configuration into their provided configuration, so switching this order for all data sources would result in initramfs configuration being discarded on any data source that implements network_config.)
Diffstat (limited to 'cloudinit/sources/DataSourceOracle.py')
-rw-r--r--cloudinit/sources/DataSourceOracle.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/cloudinit/sources/DataSourceOracle.py b/cloudinit/sources/DataSourceOracle.py
index 086af799..6e73f568 100644
--- a/cloudinit/sources/DataSourceOracle.py
+++ b/cloudinit/sources/DataSourceOracle.py
@@ -109,6 +109,13 @@ class DataSourceOracle(sources.DataSource):
dsname = 'Oracle'
system_uuid = None
vendordata_pure = None
+ network_config_sources = (
+ sources.NetworkConfigSource.cmdline,
+ sources.NetworkConfigSource.ds,
+ sources.NetworkConfigSource.initramfs,
+ sources.NetworkConfigSource.system_cfg,
+ )
+
_network_config = sources.UNSET
def __init__(self, sys_cfg, *args, **kwargs):