def test_add_or_update_network(self): networks = {'network-id1': 'network-name1'} self._create_networks(networks) new_network_name = 'network-name-updated' infoblox_db.add_or_update_network(self.ctx.session, 'network-id1', new_network_name) network = infoblox_db.get_network(self.ctx.session, 'network-id1') self.assertEqual(new_network_name, network.network_name) infoblox_db.add_or_update_network(self.ctx.session, 'network-id2', 'network-name2') network = infoblox_db.get_network(self.ctx.session, 'network-id2') self.assertEqual('network-name2', network.network_name)
def update_network_sync(self, payload): """Notifies that the network property has been updated.""" network = payload.get('network') if self.traceable: LOG.info("Updated network: %s", network) ib_context = context.InfobloxContext(self.context, self.user_id, network, None, self.grid_config, self.plugin) ipam_controller = ipam.IpamAsyncController(ib_context) network_id = network.get('id') new_name = network.get('name') old_network = dbi.get_network(self.context.session, network_id) need_new_zones = False if new_name is not None and (old_network is None or new_name != old_network.network_name): dbi.add_or_update_network(self.context.session, network_id, new_name) pattern = self.grid_config.default_domain_name_pattern if '{network_name}' in pattern: need_new_zones = True ipam_controller.update_network_sync(need_new_zones)
def update_network_sync(self, payload): """Notifies that the network property has been updated.""" network = payload.get('network') if self.traceable: LOG.info("Updated network: %s", network) ib_context = context.InfobloxContext(self.context, self.user_id, network, None, self.grid_config, self.plugin) ipam_controller = ipam.IpamAsyncController(ib_context) network_id = network.get('id') new_name = network.get('name') old_network = dbi.get_network(self.context.session, network_id) need_new_zones = False if new_name is not None and ( old_network is None or new_name != old_network.network_name): dbi.add_or_update_network(self.context.session, network_id, new_name) pattern = self.grid_config.default_domain_name_pattern if '{network_name}' in pattern: need_new_zones = True ipam_controller.update_network_sync(need_new_zones)
def test_add_and_get_network(self): networks = {'network-id': 'network-name'} self._create_networks(networks) network = infoblox_db.get_network(self.ctx.session, 'network-id') self.assertEqual('network-name', network.network_name)