self._update_poll_time('cloud_nodes')
for key, node in self.cloud_nodes.update_from(nodelist):
self._logger.info("Registering new cloud node %s", key)
- if key in self.booting:
- record = self.booting.pop(key)
+ if key in self.booted:
+ record = self.booted.pop(key)
else:
record = self._new_node(node)
self.cloud_nodes.add(record)
self.daemon.node_up(setup).get(self.TIMEOUT)
self.assertEqual(1, self.node_factory.start.call_count)
+ def test_no_duplication_when_booted_node_listed(self):
+ cloud_node = testutil.cloud_node_mock(2)
+ setup = self.start_node_boot(cloud_node, id_num=2)
+ self.daemon.node_up(setup)
+ self.daemon.update_cloud_nodes([cloud_node]).get(self.TIMEOUT)
+ self.assertEqual(1, self.node_factory.start.call_count)
+
def test_node_counted_after_boot_with_slow_listing(self):
# Test that, after we boot a compute node, we assume it exists
# even it doesn't appear in the listing (e.g., because of delays