Allow empty stages
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-init |
Fix Released
|
Low
|
Robert Schweikert |
Bug Description
While users that modify the config file should remove any stages they do not want executed failing to do so results in a traceback:
Traceback (most recent call last):
File "/usr/lib/
ret = functor(name, args)
File "/usr/lib/
return (init.datasource, run_module_
File "/usr/lib/
(which_ran, failures) = mods.run_
File "/usr/lib/
raw_mods = self._read_
File "/usr/lib/
for item in cfg_mods:
TypeError: 'NoneType' object is not iterable
Rather than complaining cloud-init should handle this gracefully and just skip the stage and do nothing.
Related branches
- Server Team CI bot: Approve (continuous-integration)
- cloud-init Commiters: Pending requested
-
Diff: 8915 lines (+3780/-1106)115 files modifiedChangeLog (+226/-0)
cloudinit/cmd/devel/logs.py (+48/-11)
cloudinit/cmd/devel/tests/test_logs.py (+18/-3)
cloudinit/cmd/main.py (+1/-1)
cloudinit/config/cc_lxd.py (+56/-8)
cloudinit/config/cc_mounts.py (+45/-30)
cloudinit/config/cc_phone_home.py (+4/-3)
cloudinit/config/cc_resizefs.py (+1/-1)
cloudinit/config/cc_users_groups.py (+6/-2)
cloudinit/config/schema.py (+46/-18)
cloudinit/distros/__init__.py (+1/-1)
cloudinit/distros/freebsd.py (+1/-1)
cloudinit/ec2_utils.py (+6/-8)
cloudinit/handlers/upstart_job.py (+1/-1)
cloudinit/net/__init__.py (+6/-2)
cloudinit/net/eni.py (+17/-3)
cloudinit/net/netplan.py (+14/-8)
cloudinit/net/sysconfig.py (+7/-0)
cloudinit/netinfo.py (+31/-11)
cloudinit/sources/DataSourceAltCloud.py (+8/-8)
cloudinit/sources/DataSourceAzure.py (+62/-22)
cloudinit/sources/DataSourceCloudStack.py (+10/-21)
cloudinit/sources/DataSourceConfigDrive.py (+10/-5)
cloudinit/sources/DataSourceEc2.py (+15/-33)
cloudinit/sources/DataSourceMAAS.py (+1/-1)
cloudinit/sources/DataSourceNoCloud.py (+2/-2)
cloudinit/sources/DataSourceOpenNebula.py (+1/-1)
cloudinit/sources/DataSourceOpenStack.py (+127/-55)
cloudinit/sources/DataSourceSmartOS.py (+47/-12)
cloudinit/sources/__init__.py (+76/-0)
cloudinit/sources/helpers/azure.py (+3/-2)
cloudinit/sources/tests/test_init.py (+87/-2)
cloudinit/stages.py (+17/-9)
cloudinit/tests/helpers.py (+10/-2)
cloudinit/tests/test_netinfo.py (+46/-1)
cloudinit/tests/test_url_helper.py (+27/-1)
cloudinit/tests/test_util.py (+77/-1)
cloudinit/tests/test_version.py (+17/-0)
cloudinit/url_helper.py (+28/-1)
cloudinit/user_data.py (+16/-12)
cloudinit/util.py (+152/-64)
cloudinit/version.py (+5/-1)
debian/changelog (+67/-3)
debian/patches/openstack-no-network-config.patch (+2/-4)
doc/examples/cloud-config-user-groups.txt (+20/-7)
doc/rtd/topics/datasources.rst (+97/-0)
doc/rtd/topics/datasources/cloudstack.rst (+20/-6)
doc/rtd/topics/datasources/ec2.rst (+30/-0)
doc/rtd/topics/datasources/openstack.rst (+21/-2)
doc/rtd/topics/network-config-format-v1.rst (+27/-0)
doc/rtd/topics/network-config-format-v2.rst (+6/-0)
doc/rtd/topics/tests.rst (+6/-1)
integration-requirements.txt (+1/-1)
packages/bddeb (+36/-4)
packages/brpm (+3/-3)
packages/debian/changelog.in (+1/-1)
packages/debian/rules.in (+2/-0)
packages/redhat/cloud-init.spec.in (+7/-0)
packages/suse/cloud-init.spec.in (+28/-42)
setup.py (+14/-3)
systemd/cloud-config.service.tmpl (+1/-0)
tests/cloud_tests/args.py (+3/-0)
tests/cloud_tests/collect.py (+3/-2)
tests/cloud_tests/platforms/instances.py (+29/-10)
tests/cloud_tests/platforms/lxd/instance.py (+1/-1)
tests/cloud_tests/releases.yaml (+16/-0)
tests/cloud_tests/stage.py (+12/-3)
tests/cloud_tests/testcases.yaml (+2/-2)
tests/cloud_tests/testcases/base.py (+21/-0)
tests/cloud_tests/testcases/modules/byobu.py (+1/-2)
tests/cloud_tests/testcases/modules/byobu.yaml (+0/-3)
tests/cloud_tests/testcases/modules/ca_certs.py (+17/-4)
tests/cloud_tests/testcases/modules/ca_certs.yaml (+6/-2)
tests/cloud_tests/testcases/modules/ntp.py (+2/-3)
tests/cloud_tests/testcases/modules/ntp_chrony.py (+12/-1)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.py (+6/-8)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.yaml (+3/-6)
tests/cloud_tests/testcases/modules/salt_minion.py (+1/-2)
tests/cloud_tests/testcases/modules/salt_minion.yaml (+12/-5)
tests/cloud_tests/verify.py (+46/-1)
tests/data/netinfo/netdev-formatted-output-down (+8/-0)
tests/data/netinfo/new-ifconfig-output-down (+15/-0)
tests/data/netinfo/sample-ipaddrshow-output-down (+8/-0)
tests/unittests/test__init__.py (+4/-4)
tests/unittests/test_data.py (+21/-3)
tests/unittests/test_datasource/test_aliyun.py (+0/-2)
tests/unittests/test_datasource/test_azure.py (+207/-68)
tests/unittests/test_datasource/test_azure_helper.py (+1/-1)
tests/unittests/test_datasource/test_common.py (+1/-0)
tests/unittests/test_datasource/test_ec2.py (+0/-12)
tests/unittests/test_datasource/test_gce.py (+0/-1)
tests/unittests/test_datasource/test_openstack.py (+215/-20)
tests/unittests/test_datasource/test_scaleway.py (+0/-3)
tests/unittests/test_datasource/test_smartos.py (+26/-0)
tests/unittests/test_distros/test_create_users.py (+8/-0)
tests/unittests/test_ds_identify.py (+141/-10)
tests/unittests/test_ec2_util.py (+0/-9)
tests/unittests/test_handler/test_handler_apt_conf_v1.py (+6/-10)
tests/unittests/test_handler/test_handler_apt_configure_sources_list_v1.py (+0/-7)
tests/unittests/test_handler/test_handler_apt_source_v1.py (+10/-17)
tests/unittests/test_handler/test_handler_apt_source_v3.py (+10/-17)
tests/unittests/test_handler/test_handler_chef.py (+12/-4)
tests/unittests/test_handler/test_handler_lxd.py (+64/-16)
tests/unittests/test_handler/test_handler_mounts.py (+100/-4)
tests/unittests/test_handler/test_handler_ntp.py (+22/-31)
tests/unittests/test_handler/test_handler_resizefs.py (+1/-1)
tests/unittests/test_handler/test_schema.py (+33/-6)
tests/unittests/test_net.py (+63/-8)
tests/unittests/test_runs/test_simple_run.py (+30/-2)
tests/unittests/test_util.py (+114/-3)
tools/ds-identify (+64/-28)
tools/read-dependencies (+6/-2)
tools/run-centos (+30/-310)
tools/run-container (+590/-0)
tox.ini (+9/-7)
- Server Team CI bot: Approve (continuous-integration)
- cloud-init Commiters: Pending requested
-
Diff: 15407 lines (+7273/-1955)202 files modified.pylintrc (+1/-1)
ChangeLog (+226/-0)
MANIFEST.in (+1/-0)
bash_completion/cloud-init (+77/-0)
cloudinit/analyze/__main__.py (+1/-1)
cloudinit/analyze/dump.py (+1/-1)
cloudinit/apport.py (+23/-4)
cloudinit/cmd/devel/logs.py (+48/-11)
cloudinit/cmd/devel/tests/test_logs.py (+18/-3)
cloudinit/cmd/main.py (+1/-1)
cloudinit/cmd/tests/test_main.py (+3/-3)
cloudinit/config/cc_apt_configure.py (+2/-2)
cloudinit/config/cc_bootcmd.py (+0/-1)
cloudinit/config/cc_disable_ec2_metadata.py (+12/-2)
cloudinit/config/cc_disk_setup.py (+4/-8)
cloudinit/config/cc_emit_upstart.py (+1/-1)
cloudinit/config/cc_lxd.py (+56/-8)
cloudinit/config/cc_mounts.py (+45/-30)
cloudinit/config/cc_ntp.py (+407/-78)
cloudinit/config/cc_phone_home.py (+4/-3)
cloudinit/config/cc_power_state_change.py (+1/-1)
cloudinit/config/cc_resizefs.py (+4/-6)
cloudinit/config/cc_rh_subscription.py (+8/-10)
cloudinit/config/cc_rsyslog.py (+2/-2)
cloudinit/config/cc_runcmd.py (+0/-1)
cloudinit/config/cc_set_passwords.py (+45/-60)
cloudinit/config/cc_snap.py (+2/-3)
cloudinit/config/cc_snappy.py (+2/-2)
cloudinit/config/cc_ubuntu_advantage.py (+2/-3)
cloudinit/config/cc_users_groups.py (+6/-2)
cloudinit/config/schema.py (+48/-20)
cloudinit/config/tests/test_disable_ec2_metadata.py (+50/-0)
cloudinit/config/tests/test_set_passwords.py (+71/-0)
cloudinit/config/tests/test_snap.py (+27/-2)
cloudinit/config/tests/test_ubuntu_advantage.py (+28/-2)
cloudinit/distros/__init__.py (+13/-1)
cloudinit/distros/freebsd.py (+5/-5)
cloudinit/distros/opensuse.py (+24/-0)
cloudinit/distros/ubuntu.py (+19/-0)
cloudinit/ec2_utils.py (+6/-8)
cloudinit/handlers/upstart_job.py (+1/-1)
cloudinit/net/__init__.py (+33/-3)
cloudinit/net/cmdline.py (+1/-1)
cloudinit/net/dhcp.py (+1/-1)
cloudinit/net/eni.py (+17/-3)
cloudinit/net/netplan.py (+14/-8)
cloudinit/net/network_state.py (+5/-6)
cloudinit/net/sysconfig.py (+8/-2)
cloudinit/net/tests/test_init.py (+1/-0)
cloudinit/netinfo.py (+300/-79)
cloudinit/reporting/events.py (+1/-1)
cloudinit/sources/DataSourceAliYun.py (+1/-1)
cloudinit/sources/DataSourceAltCloud.py (+9/-12)
cloudinit/sources/DataSourceAzure.py (+75/-42)
cloudinit/sources/DataSourceCloudStack.py (+10/-21)
cloudinit/sources/DataSourceConfigDrive.py (+10/-5)
cloudinit/sources/DataSourceEc2.py (+15/-33)
cloudinit/sources/DataSourceIBMCloud.py (+92/-14)
cloudinit/sources/DataSourceMAAS.py (+2/-2)
cloudinit/sources/DataSourceNoCloud.py (+2/-2)
cloudinit/sources/DataSourceOVF.py (+1/-1)
cloudinit/sources/DataSourceOpenNebula.py (+1/-1)
cloudinit/sources/DataSourceOpenStack.py (+127/-55)
cloudinit/sources/DataSourceSmartOS.py (+163/-33)
cloudinit/sources/__init__.py (+76/-0)
cloudinit/sources/helpers/azure.py (+3/-2)
cloudinit/sources/helpers/digitalocean.py (+3/-4)
cloudinit/sources/helpers/openstack.py (+1/-1)
cloudinit/sources/helpers/vmware/imc/config_nic.py (+1/-1)
cloudinit/sources/helpers/vmware/imc/config_passwd.py (+2/-2)
cloudinit/sources/helpers/vmware/imc/guestcust_util.py (+2/-2)
cloudinit/sources/tests/test_init.py (+88/-3)
cloudinit/ssh_util.py (+63/-7)
cloudinit/stages.py (+17/-9)
cloudinit/templater.py (+10/-2)
cloudinit/tests/helpers.py (+56/-30)
cloudinit/tests/test_netinfo.py (+147/-86)
cloudinit/tests/test_url_helper.py (+27/-1)
cloudinit/tests/test_util.py (+127/-2)
cloudinit/tests/test_version.py (+17/-0)
cloudinit/url_helper.py (+29/-2)
cloudinit/user_data.py (+16/-12)
cloudinit/util.py (+171/-68)
cloudinit/version.py (+5/-1)
config/cloud.cfg.tmpl (+2/-0)
debian/changelog (+94/-3)
debian/patches/azure-use-walinux-agent.patch (+1/-1)
debian/patches/ds-identify-behavior-xenial.patch (+2/-2)
debian/patches/openstack-no-network-config.patch (+2/-4)
doc/examples/cloud-config-disk-setup.txt (+2/-2)
doc/examples/cloud-config-user-groups.txt (+20/-7)
doc/rtd/topics/datasources.rst (+98/-0)
doc/rtd/topics/datasources/aliyun.rst (+74/-0)
doc/rtd/topics/datasources/cloudstack.rst (+20/-6)
doc/rtd/topics/datasources/ec2.rst (+30/-0)
doc/rtd/topics/datasources/openstack.rst (+21/-2)
doc/rtd/topics/network-config-format-v1.rst (+27/-0)
doc/rtd/topics/network-config-format-v2.rst (+6/-0)
doc/rtd/topics/tests.rst (+6/-1)
integration-requirements.txt (+1/-1)
packages/bddeb (+36/-4)
packages/brpm (+3/-3)
packages/debian/changelog.in (+1/-1)
packages/debian/control.in (+1/-0)
packages/debian/rules.in (+2/-0)
packages/redhat/cloud-init.spec.in (+8/-0)
packages/suse/cloud-init.spec.in (+29/-42)
setup.py (+15/-3)
systemd/cloud-config.service.tmpl (+1/-0)
templates/chrony.conf.debian.tmpl (+39/-0)
templates/chrony.conf.fedora.tmpl (+48/-0)
templates/chrony.conf.opensuse.tmpl (+38/-0)
templates/chrony.conf.rhel.tmpl (+45/-0)
templates/chrony.conf.sles.tmpl (+38/-0)
templates/chrony.conf.ubuntu.tmpl (+42/-0)
tests/cloud_tests/args.py (+3/-0)
tests/cloud_tests/bddeb.py (+1/-1)
tests/cloud_tests/collect.py (+5/-3)
tests/cloud_tests/platforms/instances.py (+30/-11)
tests/cloud_tests/platforms/lxd/instance.py (+5/-7)
tests/cloud_tests/releases.yaml (+16/-0)
tests/cloud_tests/setup_image.py (+5/-6)
tests/cloud_tests/stage.py (+12/-3)
tests/cloud_tests/testcases.yaml (+2/-2)
tests/cloud_tests/testcases/base.py (+28/-6)
tests/cloud_tests/testcases/examples/including_user_groups.py (+1/-1)
tests/cloud_tests/testcases/modules/byobu.py (+1/-2)
tests/cloud_tests/testcases/modules/byobu.yaml (+0/-3)
tests/cloud_tests/testcases/modules/ca_certs.py (+17/-4)
tests/cloud_tests/testcases/modules/ca_certs.yaml (+6/-2)
tests/cloud_tests/testcases/modules/ntp.py (+2/-3)
tests/cloud_tests/testcases/modules/ntp.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_chrony.py (+26/-0)
tests/cloud_tests/testcases/modules/ntp_chrony.yaml (+17/-0)
tests/cloud_tests/testcases/modules/ntp_pools.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_servers.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_timesyncd.py (+15/-0)
tests/cloud_tests/testcases/modules/ntp_timesyncd.yaml (+15/-0)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.py (+6/-8)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.yaml (+3/-6)
tests/cloud_tests/testcases/modules/salt_minion.py (+1/-2)
tests/cloud_tests/testcases/modules/salt_minion.yaml (+12/-5)
tests/cloud_tests/testcases/modules/user_groups.py (+1/-1)
tests/cloud_tests/util.py (+1/-1)
tests/cloud_tests/verify.py (+46/-1)
tests/data/netinfo/netdev-formatted-output (+10/-0)
tests/data/netinfo/netdev-formatted-output-down (+8/-0)
tests/data/netinfo/new-ifconfig-output (+18/-0)
tests/data/netinfo/new-ifconfig-output-down (+15/-0)
tests/data/netinfo/old-ifconfig-output (+18/-0)
tests/data/netinfo/route-formatted-output (+22/-0)
tests/data/netinfo/sample-ipaddrshow-output (+13/-0)
tests/data/netinfo/sample-ipaddrshow-output-down (+8/-0)
tests/data/netinfo/sample-iproute-output-v4 (+3/-0)
tests/data/netinfo/sample-iproute-output-v6 (+11/-0)
tests/data/netinfo/sample-route-output-v4 (+5/-0)
tests/data/netinfo/sample-route-output-v6 (+13/-0)
tests/unittests/test__init__.py (+5/-5)
tests/unittests/test_data.py (+21/-3)
tests/unittests/test_datasource/test_aliyun.py (+0/-2)
tests/unittests/test_datasource/test_azure.py (+209/-70)
tests/unittests/test_datasource/test_azure_helper.py (+1/-1)
tests/unittests/test_datasource/test_common.py (+1/-0)
tests/unittests/test_datasource/test_ec2.py (+0/-12)
tests/unittests/test_datasource/test_gce.py (+0/-1)
tests/unittests/test_datasource/test_ibmcloud.py (+50/-0)
tests/unittests/test_datasource/test_maas.py (+2/-2)
tests/unittests/test_datasource/test_nocloud.py (+0/-3)
tests/unittests/test_datasource/test_openstack.py (+215/-20)
tests/unittests/test_datasource/test_scaleway.py (+0/-3)
tests/unittests/test_datasource/test_smartos.py (+245/-5)
tests/unittests/test_distros/test_create_users.py (+8/-0)
tests/unittests/test_distros/test_netconfig.py (+6/-0)
tests/unittests/test_distros/test_user_data_normalize.py (+6/-0)
tests/unittests/test_ds_identify.py (+205/-18)
tests/unittests/test_ec2_util.py (+0/-9)
tests/unittests/test_filters/test_launch_index.py (+5/-5)
tests/unittests/test_handler/test_handler_apt_conf_v1.py (+6/-10)
tests/unittests/test_handler/test_handler_apt_configure_sources_list_v1.py (+0/-7)
tests/unittests/test_handler/test_handler_apt_source_v1.py (+10/-17)
tests/unittests/test_handler/test_handler_apt_source_v3.py (+11/-18)
tests/unittests/test_handler/test_handler_bootcmd.py (+26/-8)
tests/unittests/test_handler/test_handler_chef.py (+12/-4)
tests/unittests/test_handler/test_handler_lxd.py (+64/-16)
tests/unittests/test_handler/test_handler_mounts.py (+100/-4)
tests/unittests/test_handler/test_handler_ntp.py (+571/-305)
tests/unittests/test_handler/test_handler_resizefs.py (+1/-1)
tests/unittests/test_handler/test_handler_runcmd.py (+26/-7)
tests/unittests/test_handler/test_schema.py (+33/-6)
tests/unittests/test_merging.py (+1/-1)
tests/unittests/test_net.py (+189/-12)
tests/unittests/test_runs/test_merge_run.py (+1/-1)
tests/unittests/test_runs/test_simple_run.py (+30/-2)
tests/unittests/test_sshutil.py (+94/-3)
tests/unittests/test_templating.py (+42/-3)
tests/unittests/test_util.py (+126/-13)
tools/ds-identify (+83/-28)
tools/make-tarball (+12/-3)
tools/read-dependencies (+6/-2)
tools/run-centos (+30/-310)
tools/run-container (+590/-0)
tox.ini (+9/-7)
- Server Team CI bot: Approve (continuous-integration)
- cloud-init Commiters: Pending requested
-
Diff: 15370 lines (+7268/-1952)200 files modified.pylintrc (+1/-1)
ChangeLog (+226/-0)
MANIFEST.in (+1/-0)
bash_completion/cloud-init (+77/-0)
cloudinit/analyze/__main__.py (+1/-1)
cloudinit/analyze/dump.py (+1/-1)
cloudinit/apport.py (+23/-4)
cloudinit/cmd/devel/logs.py (+48/-11)
cloudinit/cmd/devel/tests/test_logs.py (+18/-3)
cloudinit/cmd/main.py (+1/-1)
cloudinit/cmd/tests/test_main.py (+3/-3)
cloudinit/config/cc_apt_configure.py (+2/-2)
cloudinit/config/cc_bootcmd.py (+0/-1)
cloudinit/config/cc_disable_ec2_metadata.py (+12/-2)
cloudinit/config/cc_disk_setup.py (+4/-8)
cloudinit/config/cc_emit_upstart.py (+1/-1)
cloudinit/config/cc_lxd.py (+56/-8)
cloudinit/config/cc_mounts.py (+45/-30)
cloudinit/config/cc_ntp.py (+407/-78)
cloudinit/config/cc_phone_home.py (+4/-3)
cloudinit/config/cc_power_state_change.py (+1/-1)
cloudinit/config/cc_resizefs.py (+4/-6)
cloudinit/config/cc_rh_subscription.py (+8/-10)
cloudinit/config/cc_rsyslog.py (+2/-2)
cloudinit/config/cc_runcmd.py (+0/-1)
cloudinit/config/cc_set_passwords.py (+45/-60)
cloudinit/config/cc_snap.py (+2/-3)
cloudinit/config/cc_snappy.py (+2/-2)
cloudinit/config/cc_ubuntu_advantage.py (+2/-3)
cloudinit/config/cc_users_groups.py (+6/-2)
cloudinit/config/schema.py (+48/-20)
cloudinit/config/tests/test_disable_ec2_metadata.py (+50/-0)
cloudinit/config/tests/test_set_passwords.py (+71/-0)
cloudinit/config/tests/test_snap.py (+27/-2)
cloudinit/config/tests/test_ubuntu_advantage.py (+28/-2)
cloudinit/distros/__init__.py (+13/-1)
cloudinit/distros/freebsd.py (+5/-5)
cloudinit/distros/opensuse.py (+24/-0)
cloudinit/distros/ubuntu.py (+19/-0)
cloudinit/ec2_utils.py (+6/-8)
cloudinit/handlers/upstart_job.py (+1/-1)
cloudinit/net/__init__.py (+33/-3)
cloudinit/net/cmdline.py (+1/-1)
cloudinit/net/dhcp.py (+1/-1)
cloudinit/net/eni.py (+17/-3)
cloudinit/net/netplan.py (+14/-8)
cloudinit/net/network_state.py (+5/-6)
cloudinit/net/sysconfig.py (+8/-2)
cloudinit/net/tests/test_init.py (+1/-0)
cloudinit/netinfo.py (+300/-79)
cloudinit/reporting/events.py (+1/-1)
cloudinit/sources/DataSourceAliYun.py (+1/-1)
cloudinit/sources/DataSourceAltCloud.py (+9/-12)
cloudinit/sources/DataSourceAzure.py (+75/-42)
cloudinit/sources/DataSourceCloudStack.py (+10/-21)
cloudinit/sources/DataSourceConfigDrive.py (+10/-5)
cloudinit/sources/DataSourceEc2.py (+15/-33)
cloudinit/sources/DataSourceIBMCloud.py (+92/-14)
cloudinit/sources/DataSourceMAAS.py (+2/-2)
cloudinit/sources/DataSourceNoCloud.py (+2/-2)
cloudinit/sources/DataSourceOVF.py (+1/-1)
cloudinit/sources/DataSourceOpenNebula.py (+1/-1)
cloudinit/sources/DataSourceOpenStack.py (+127/-55)
cloudinit/sources/DataSourceSmartOS.py (+163/-33)
cloudinit/sources/__init__.py (+76/-0)
cloudinit/sources/helpers/azure.py (+3/-2)
cloudinit/sources/helpers/digitalocean.py (+3/-4)
cloudinit/sources/helpers/openstack.py (+1/-1)
cloudinit/sources/helpers/vmware/imc/config_nic.py (+1/-1)
cloudinit/sources/helpers/vmware/imc/config_passwd.py (+2/-2)
cloudinit/sources/helpers/vmware/imc/guestcust_util.py (+2/-2)
cloudinit/sources/tests/test_init.py (+88/-3)
cloudinit/ssh_util.py (+63/-7)
cloudinit/stages.py (+17/-9)
cloudinit/templater.py (+10/-2)
cloudinit/tests/helpers.py (+56/-30)
cloudinit/tests/test_netinfo.py (+147/-86)
cloudinit/tests/test_url_helper.py (+27/-1)
cloudinit/tests/test_util.py (+127/-2)
cloudinit/tests/test_version.py (+17/-0)
cloudinit/url_helper.py (+29/-2)
cloudinit/user_data.py (+16/-12)
cloudinit/util.py (+171/-68)
cloudinit/version.py (+5/-1)
config/cloud.cfg.tmpl (+2/-0)
debian/changelog (+92/-3)
debian/patches/openstack-no-network-config.patch (+2/-4)
doc/examples/cloud-config-disk-setup.txt (+2/-2)
doc/examples/cloud-config-user-groups.txt (+20/-7)
doc/rtd/topics/datasources.rst (+98/-0)
doc/rtd/topics/datasources/aliyun.rst (+74/-0)
doc/rtd/topics/datasources/cloudstack.rst (+20/-6)
doc/rtd/topics/datasources/ec2.rst (+30/-0)
doc/rtd/topics/datasources/openstack.rst (+21/-2)
doc/rtd/topics/network-config-format-v1.rst (+27/-0)
doc/rtd/topics/network-config-format-v2.rst (+6/-0)
doc/rtd/topics/tests.rst (+6/-1)
integration-requirements.txt (+1/-1)
packages/bddeb (+36/-4)
packages/brpm (+3/-3)
packages/debian/changelog.in (+1/-1)
packages/debian/control.in (+1/-0)
packages/debian/rules.in (+2/-0)
packages/redhat/cloud-init.spec.in (+8/-0)
packages/suse/cloud-init.spec.in (+29/-42)
setup.py (+15/-3)
systemd/cloud-config.service.tmpl (+1/-0)
templates/chrony.conf.debian.tmpl (+39/-0)
templates/chrony.conf.fedora.tmpl (+48/-0)
templates/chrony.conf.opensuse.tmpl (+38/-0)
templates/chrony.conf.rhel.tmpl (+45/-0)
templates/chrony.conf.sles.tmpl (+38/-0)
templates/chrony.conf.ubuntu.tmpl (+42/-0)
tests/cloud_tests/args.py (+3/-0)
tests/cloud_tests/bddeb.py (+1/-1)
tests/cloud_tests/collect.py (+5/-3)
tests/cloud_tests/platforms/instances.py (+30/-11)
tests/cloud_tests/platforms/lxd/instance.py (+5/-7)
tests/cloud_tests/releases.yaml (+16/-0)
tests/cloud_tests/setup_image.py (+5/-6)
tests/cloud_tests/stage.py (+12/-3)
tests/cloud_tests/testcases.yaml (+2/-2)
tests/cloud_tests/testcases/base.py (+28/-6)
tests/cloud_tests/testcases/examples/including_user_groups.py (+1/-1)
tests/cloud_tests/testcases/modules/byobu.py (+1/-2)
tests/cloud_tests/testcases/modules/byobu.yaml (+0/-3)
tests/cloud_tests/testcases/modules/ca_certs.py (+17/-4)
tests/cloud_tests/testcases/modules/ca_certs.yaml (+6/-2)
tests/cloud_tests/testcases/modules/ntp.py (+2/-3)
tests/cloud_tests/testcases/modules/ntp.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_chrony.py (+26/-0)
tests/cloud_tests/testcases/modules/ntp_chrony.yaml (+17/-0)
tests/cloud_tests/testcases/modules/ntp_pools.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_servers.yaml (+1/-0)
tests/cloud_tests/testcases/modules/ntp_timesyncd.py (+15/-0)
tests/cloud_tests/testcases/modules/ntp_timesyncd.yaml (+15/-0)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.py (+6/-8)
tests/cloud_tests/testcases/modules/package_update_upgrade_install.yaml (+3/-6)
tests/cloud_tests/testcases/modules/salt_minion.py (+1/-2)
tests/cloud_tests/testcases/modules/salt_minion.yaml (+12/-5)
tests/cloud_tests/testcases/modules/user_groups.py (+1/-1)
tests/cloud_tests/util.py (+1/-1)
tests/cloud_tests/verify.py (+46/-1)
tests/data/netinfo/netdev-formatted-output (+10/-0)
tests/data/netinfo/netdev-formatted-output-down (+8/-0)
tests/data/netinfo/new-ifconfig-output (+18/-0)
tests/data/netinfo/new-ifconfig-output-down (+15/-0)
tests/data/netinfo/old-ifconfig-output (+18/-0)
tests/data/netinfo/route-formatted-output (+22/-0)
tests/data/netinfo/sample-ipaddrshow-output (+13/-0)
tests/data/netinfo/sample-ipaddrshow-output-down (+8/-0)
tests/data/netinfo/sample-iproute-output-v4 (+3/-0)
tests/data/netinfo/sample-iproute-output-v6 (+11/-0)
tests/data/netinfo/sample-route-output-v4 (+5/-0)
tests/data/netinfo/sample-route-output-v6 (+13/-0)
tests/unittests/test__init__.py (+5/-5)
tests/unittests/test_data.py (+21/-3)
tests/unittests/test_datasource/test_aliyun.py (+0/-2)
tests/unittests/test_datasource/test_azure.py (+209/-70)
tests/unittests/test_datasource/test_azure_helper.py (+1/-1)
tests/unittests/test_datasource/test_common.py (+1/-0)
tests/unittests/test_datasource/test_ec2.py (+0/-12)
tests/unittests/test_datasource/test_gce.py (+0/-1)
tests/unittests/test_datasource/test_ibmcloud.py (+50/-0)
tests/unittests/test_datasource/test_maas.py (+2/-2)
tests/unittests/test_datasource/test_nocloud.py (+0/-3)
tests/unittests/test_datasource/test_openstack.py (+215/-20)
tests/unittests/test_datasource/test_scaleway.py (+0/-3)
tests/unittests/test_datasource/test_smartos.py (+245/-5)
tests/unittests/test_distros/test_create_users.py (+8/-0)
tests/unittests/test_distros/test_netconfig.py (+6/-0)
tests/unittests/test_distros/test_user_data_normalize.py (+6/-0)
tests/unittests/test_ds_identify.py (+205/-18)
tests/unittests/test_ec2_util.py (+0/-9)
tests/unittests/test_filters/test_launch_index.py (+5/-5)
tests/unittests/test_handler/test_handler_apt_conf_v1.py (+6/-10)
tests/unittests/test_handler/test_handler_apt_configure_sources_list_v1.py (+0/-7)
tests/unittests/test_handler/test_handler_apt_source_v1.py (+10/-17)
tests/unittests/test_handler/test_handler_apt_source_v3.py (+11/-18)
tests/unittests/test_handler/test_handler_bootcmd.py (+26/-8)
tests/unittests/test_handler/test_handler_chef.py (+12/-4)
tests/unittests/test_handler/test_handler_lxd.py (+64/-16)
tests/unittests/test_handler/test_handler_mounts.py (+100/-4)
tests/unittests/test_handler/test_handler_ntp.py (+571/-305)
tests/unittests/test_handler/test_handler_resizefs.py (+1/-1)
tests/unittests/test_handler/test_handler_runcmd.py (+26/-7)
tests/unittests/test_handler/test_schema.py (+33/-6)
tests/unittests/test_merging.py (+1/-1)
tests/unittests/test_net.py (+189/-12)
tests/unittests/test_runs/test_merge_run.py (+1/-1)
tests/unittests/test_runs/test_simple_run.py (+30/-2)
tests/unittests/test_sshutil.py (+94/-3)
tests/unittests/test_templating.py (+42/-3)
tests/unittests/test_util.py (+126/-13)
tools/ds-identify (+83/-28)
tools/make-tarball (+12/-3)
tools/read-dependencies (+6/-2)
tools/run-centos (+30/-310)
tools/run-container (+590/-0)
tox.ini (+9/-7)
- Server Team CI bot: Approve (continuous-integration)
- Scott Moser: Pending requested
-
Diff: 1562 lines (+711/-94)26 files modifiedcloudinit/config/cc_lxd.py (+56/-8)
cloudinit/net/eni.py (+17/-3)
cloudinit/net/netplan.py (+14/-8)
cloudinit/net/sysconfig.py (+7/-0)
cloudinit/sources/DataSourceOpenStack.py (+23/-0)
cloudinit/stages.py (+3/-1)
cloudinit/user_data.py (+13/-9)
cloudinit/util.py (+90/-21)
debian/changelog (+25/-0)
doc/rtd/topics/datasources/openstack.rst (+15/-0)
doc/rtd/topics/network-config-format-v1.rst (+27/-0)
doc/rtd/topics/network-config-format-v2.rst (+6/-0)
doc/rtd/topics/tests.rst (+6/-1)
integration-requirements.txt (+1/-1)
tests/cloud_tests/args.py (+3/-0)
tests/cloud_tests/collect.py (+2/-1)
tests/cloud_tests/stage.py (+12/-3)
tests/cloud_tests/testcases/modules/ntp_chrony.py (+12/-1)
tests/cloud_tests/testcases/modules/salt_minion.yaml (+12/-2)
tests/cloud_tests/verify.py (+46/-1)
tests/unittests/test_data.py (+10/-1)
tests/unittests/test_datasource/test_openstack.py (+110/-14)
tests/unittests/test_handler/test_handler_lxd.py (+64/-16)
tests/unittests/test_net.py (+20/-1)
tests/unittests/test_runs/test_simple_run.py (+30/-2)
tests/unittests/test_util.py (+87/-0)
- Chad Smith: Approve
- Server Team CI bot: Approve (continuous-integration)
-
Diff: 69 lines (+33/-3)2 files modifiedcloudinit/stages.py (+3/-1)
tests/unittests/test_runs/test_simple_run.py (+30/-2)
Changed in cloud-init: | |
assignee: | nobody → Robert Schweikert (rjschwei) |
Changed in cloud-init: | |
status: | New → In Progress |
importance: | Undecided → Low |
An upstream commit landed for this bug.
To view that commit see the following URL: /git.launchpad. net/cloud- init/commit/ ?id=fef2616b
https:/