summaryrefslogtreecommitdiff
path: root/debian/patches
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/azure-use-walinux-agent.patch17
-rw-r--r--debian/patches/ds-identify-behavior-xenial.patch32
-rw-r--r--debian/patches/openstack-no-network-config.patch40
-rw-r--r--debian/patches/series4
-rw-r--r--debian/patches/stable-release-no-jsonschema-dep.patch21
5 files changed, 114 insertions, 0 deletions
diff --git a/debian/patches/azure-use-walinux-agent.patch b/debian/patches/azure-use-walinux-agent.patch
new file mode 100644
index 00000000..3c858824
--- /dev/null
+++ b/debian/patches/azure-use-walinux-agent.patch
@@ -0,0 +1,17 @@
+Description: Use walinux-agent rather than builtin fabric support
+ Upstream now uses the built-in support for instance initialization on Azure.
+ On a stable release, we want to continue to use the walinux-agent integration.
+ Upstream made this change under bug 1538522.
+Forwarded: not-needed
+Author: Scott Moser <smoser@ubuntu.com>
+--- a/cloudinit/sources/DataSourceAzure.py
++++ b/cloudinit/sources/DataSourceAzure.py
+@@ -196,7 +196,7 @@ if util.is_FreeBSD():
+ LOG.debug("resource disk is None")
+
+ BUILTIN_DS_CONFIG = {
+- 'agent_command': AGENT_START_BUILTIN,
++ 'agent_command': AGENT_START,
+ 'data_dir': AGENT_SEED_DIR,
+ 'set_hostname': True,
+ 'hostname_bounce': {
diff --git a/debian/patches/ds-identify-behavior-xenial.patch b/debian/patches/ds-identify-behavior-xenial.patch
new file mode 100644
index 00000000..11a89af2
--- /dev/null
+++ b/debian/patches/ds-identify-behavior-xenial.patch
@@ -0,0 +1,32 @@
+Description: Adjust behavior of ds-identify for SRU
+ To make this acceptable as a SRU we have changed ds-identify to
+ act in 'report only' mode, and to only 'warn' when it cloud-init
+ finds itself to be using a Ec2 Datasource on an unknown and
+ non AWS platform.
+Forwarded: not-needed
+Author: Scott Moser <smoser@ubuntu.com>
+Bug-ubuntu: http://bugs.launchpad.net/bugs/1669675
+Bug-ubuntu: http://bugs.launchpad.net/bugs/1660385
+
+--- a/tools/ds-identify
++++ b/tools/ds-identify
+@@ -85,8 +85,8 @@ _DI_LOGGED=""
+ DI_MAIN=${DI_MAIN:-main}
+
+ DI_BLKID_OUTPUT=""
+-DI_DEFAULT_POLICY="search,found=all,maybe=all,notfound=${DI_DISABLED}"
+-DI_DEFAULT_POLICY_NO_DMI="search,found=all,maybe=all,notfound=${DI_ENABLED}"
++DI_DEFAULT_POLICY="report,found=all,maybe=all,notfound=${DI_ENABLED}"
++DI_DEFAULT_POLICY_NO_DMI="report,found=all,maybe=all,notfound=${DI_ENABLED}"
+ DI_DMI_CHASSIS_ASSET_TAG=""
+ DI_DMI_PRODUCT_NAME=""
+ DI_DMI_SYS_VENDOR=""
+@@ -123,7 +123,7 @@ DI_ON_FOUND=""
+ DI_ON_MAYBE=""
+ DI_ON_NOTFOUND=""
+
+-DI_EC2_STRICT_ID_DEFAULT="true"
++DI_EC2_STRICT_ID_DEFAULT="warn"
+
+ _IS_IBM_CLOUD=""
+
diff --git a/debian/patches/openstack-no-network-config.patch b/debian/patches/openstack-no-network-config.patch
new file mode 100644
index 00000000..88449d1d
--- /dev/null
+++ b/debian/patches/openstack-no-network-config.patch
@@ -0,0 +1,40 @@
+Description: Fallback network config instead of network_data.json for OpenStack
+ To make this acceptable as a SRU we keep the same behavior as is
+ in the stable release which is to generate network for fallback nic
+ only.
+ .
+ In this series, OpenStack datasource can optionally generate
+ network_config from network_data.json if the datasource is configured
+ with a file like /etc/cloud.cfg.d/openstack-net.cfg:
+ .
+ datasource:
+ OpenStack:
+ apply_network_config: true
+Forwarded: not-needed
+Author: Chad Smith <chad.smith@canonical.com>
+
+--- a/cloudinit/sources/DataSourceOpenStack.py
++++ b/cloudinit/sources/DataSourceOpenStack.py
+@@ -98,10 +98,9 @@ class DataSourceOpenStack(openstack.Sour
+ if self._network_config != sources.UNSET:
+ return self._network_config
+
+- # RELEASE_BLOCKER: SRU to Xenial and Artful SRU should not provide
++ # Xenial, Artful and Bionic will not provide
+ # network_config by default unless configured in /etc/cloud/cloud.cfg*.
+- # Patch Xenial and Artful before release to default to False.
+- if util.is_false(self.ds_cfg.get('apply_network_config', True)):
++ if util.is_false(self.ds_cfg.get('apply_network_config', False)):
+ self._network_config = None
+ return self._network_config
+ if self.network_json == sources.UNSET:
+--- a/tests/unittests/test_datasource/test_openstack.py
++++ b/tests/unittests/test_datasource/test_openstack.py
+@@ -345,6 +345,7 @@ class TestOpenStackDataSource(test_helpe
+ settings.CFG_BUILTIN, None, helpers.Paths({'run_dir': self.tmp}))
+ sample_json = {'links': [{'ethernet_mac_address': 'mymac'}],
+ 'networks': [], 'services': []}
++ ds_os.ds_cfg = {'apply_network_config': True} # Default is False
+ ds_os.network_json = sample_json
+ with test_helpers.mock.patch(mock_path) as m_convert_json:
+ m_convert_json.return_value = example_cfg
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 00000000..d5a24c55
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+azure-use-walinux-agent.patch
+ds-identify-behavior-xenial.patch
+stable-release-no-jsonschema-dep.patch
+openstack-no-network-config.patch
diff --git a/debian/patches/stable-release-no-jsonschema-dep.patch b/debian/patches/stable-release-no-jsonschema-dep.patch
new file mode 100644
index 00000000..41cbe98d
--- /dev/null
+++ b/debian/patches/stable-release-no-jsonschema-dep.patch
@@ -0,0 +1,21 @@
+Description: Remove the optional dependency on jsonschema for stable release.
+ To make this acceptable as a SRU we keep the same dependencies as are
+ in the stable release.
+ .
+ The '${python3:Depends}' in debian/control would automatically add the
+ dependency if it is seen in requirements.txt.
+Forwarded: not-needed
+Author: Scott Moser <smoser@ubuntu.com>
+
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -31,7 +31,8 @@ requests
+ jsonpatch
+
+ # For validating cloud-config sections per schema definitions
+-jsonschema
++## Do not add dependencies to a stable release (SRU).
++#jsonschema
+
+ # For Python 2/3 compatibility
+ six