diff options
author | Mike Gerdts <mike.gerdts@joyent.com> | 2018-07-26 15:31:52 +0000 |
---|---|---|
committer | Server Team CI Bot <josh.powers+server-team-bot@canonical.com> | 2018-07-26 15:31:52 +0000 |
commit | 3146c96a7a740427ac6e65f9b29239f247ecc617 (patch) | |
tree | 5e2dc8bdcc03f6e80610d8d3b8021eb9ac734f6b /cloudinit/sources/tests | |
parent | 6a9e576a204c36ba29e05da2bb265d1d6ed12b22 (diff) | |
download | vyos-cloud-init-3146c96a7a740427ac6e65f9b29239f247ecc617.tar.gz vyos-cloud-init-3146c96a7a740427ac6e65f9b29239f247ecc617.zip |
update_metadata re-config on every boot comments and tests not quite right
The comment in update_metadata() that explains how a datasource should
enable network reconfig on every boot presumes that
EventType.BOOT_NEW_INSTANCE is a subset of EventType.BOOT. That's not
the case, and as such a datasource that needs to configure networking
when it is a new instance and every boot needs to include both event
types.
To make the situation above easier to debug, update_metadata() now
logs when it returns false.
To make it so that datasources do not need to test before appending to
the update_events['network'], it is changed from a list to a set.
test_update_metadata_only_acts_on_supported_update_events is updated
to allow datasources to support EventType.BOOT.
Author: Mike Gerdts <mike.gerdts@joyent.com>
Diffstat (limited to 'cloudinit/sources/tests')
-rw-r--r-- | cloudinit/sources/tests/test_init.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/cloudinit/sources/tests/test_init.py b/cloudinit/sources/tests/test_init.py index dcd221be..9e939c1e 100644 --- a/cloudinit/sources/tests/test_init.py +++ b/cloudinit/sources/tests/test_init.py @@ -429,8 +429,9 @@ class TestDataSource(CiTestCase): def test_update_metadata_only_acts_on_supported_update_events(self): """update_metadata won't get_data on unsupported update events.""" + self.datasource.update_events['network'].discard(EventType.BOOT) self.assertEqual( - {'network': [EventType.BOOT_NEW_INSTANCE]}, + {'network': set([EventType.BOOT_NEW_INSTANCE])}, self.datasource.update_events) def fake_get_data(): |