From 068e87f4d6a109c8fff25bf3b484aff8dbbec5f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89douard=20Thuleau?= Date: Mon, 6 Feb 2017 18:44:06 +0100 Subject: [PATCH] DB loader script: use created security groups The db loader script can create security groups and virtual machine interfaces but by default that interfaces are associated to the default project security group. That patch permits to associate created security groups to virtual machines interfaces. It's choosing security groups randomly. Change-Id: Ide03dc62eb6dfd193a57cbe822b01e55673fc57f Closes-Bug: #1662276 --- src/config/utils/db-loader/contrail_db_loader/main.py | 3 ++- .../resources/virtual_machine_interface.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/config/utils/db-loader/contrail_db_loader/main.py b/src/config/utils/db-loader/contrail_db_loader/main.py index 05b4fe9bc7a..4dccbeaae2f 100644 --- a/src/config/utils/db-loader/contrail_db_loader/main.py +++ b/src/config/utils/db-loader/contrail_db_loader/main.py @@ -175,7 +175,8 @@ def create_resources(self): self._rules_per_security_group) elif resource.type == 'virtual-machine-interface': _, time_elapsed = resource.create_resources( - self._resource_map['virtual-network'].amount_per_project) + self._resource_map['virtual-network'].amount_per_project, + self._resource_map['security-group'].amount_per_project) else: _, time_elapsed = resource.create_resources() logger.info("%d resources were created to load %d '%s' in " diff --git a/src/config/utils/db-loader/contrail_db_loader/resources/virtual_machine_interface.py b/src/config/utils/db-loader/contrail_db_loader/resources/virtual_machine_interface.py index 6b885563ee2..77e24c28ce6 100644 --- a/src/config/utils/db-loader/contrail_db_loader/resources/virtual_machine_interface.py +++ b/src/config/utils/db-loader/contrail_db_loader/resources/virtual_machine_interface.py @@ -26,7 +26,7 @@ def total_amount(self): return self._project_amount * self._amount_per_project * 3 @timeit(return_time_elapsed=True) - def create_resources(self, vn_per_project): + def create_resources(self, vn_per_project, sg_per_project): vms = [] with self._uuid_cf.batch(queue_size=self._batch_size) as uuid_batch,\ self._fqname_cf.batch(queue_size=self._batch_size) as \ @@ -57,6 +57,7 @@ def create_resources(self, vn_per_project): for project_idx in range(self._project_amount): for resource_idx in range(self._amount_per_project): vn_idx = randint(0, vn_per_project - 1) + sg_idx = randint(0, sg_per_project - 1) fq_name = [ 'default-domain', 'project-%d' % project_idx, @@ -121,7 +122,7 @@ def create_resources(self, vn_per_project): 'to': [ 'default-domain', 'project-%d' % project_idx, - 'default', + 'security-group-%d' % sg_idx, ], 'attr': None, }],