diff options
author | Josep Puigdemont <josep.puigdemont@enea.com> | 2016-05-06 04:32:06 +0200 |
---|---|---|
committer | Josep Puigdemont <josep.puigdemont@enea.com> | 2016-06-17 10:24:58 +0200 |
commit | dfc83244874060c4052bc3d29c256fa1bd52687d (patch) | |
tree | 0a157455a50ae31b8f62917e826de1153e3534e1 /deploy | |
parent | 2a9e72d95200161ec27e8f199a76c6ec1f88bff1 (diff) |
deploy: add support for multiple bridges
deploy.py:
Some Fuel VMs may need more than one network interface. To be able to
provide that, we now allow the user to specify the "-b" paramter
(bridge) multiple times, creating a new NIC for each one of them.
The NICs are created in the same order as they are given in the command
line.
There is no change in behavior from earlier versions, pxebr will still
be the default bridge if none is specified in the command line.
deploy.sh:
To reflect the new capabilities of deploy.py, we introduce the
possibility to specify -B more than once in deploy.sh, and honor that
when calling deploy.py. We also make it possible to specify a comma
separated list of bridges, as in: -B br1,br2.
Change-Id: I1a0100f2cfe755ec6adfeedafb391c2357f46f51
Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
Diffstat (limited to 'deploy')
-rwxr-xr-x | deploy/deploy.py | 10 | ||||
-rw-r--r-- | deploy/environments/virtual_fuel.py | 3 |
2 files changed, 9 insertions, 4 deletions
diff --git a/deploy/deploy.py b/deploy/deploy.py index 8064af993..56e5bd583 100755 --- a/deploy/deploy.py +++ b/deploy/deploy.py @@ -318,8 +318,8 @@ def parse_arguments(): parser.add_argument('-s', dest='storage_dir', action='store', default='%s/images' % CWD, help='Storage Directory [default: images]') - parser.add_argument('-b', dest='pxe_bridge', action='store', - default='pxebr', + parser.add_argument('-b', dest='pxe_bridge', action='append', + default=[], help='Linux Bridge for booting up the Fuel Master VM ' '[default: pxebr]') parser.add_argument('-p', dest='fuel_plugins_dir', action='store', @@ -341,6 +341,9 @@ def parse_arguments(): args = parser.parse_args() log(args) + if not args.pxe_bridge: + args.pxe_bridge = ['pxebr'] + check_file_exists(args.dha_file) check_dir_exists(os.path.dirname(args.deploy_log)) @@ -355,7 +358,8 @@ def parse_arguments(): check_file_exists(iso_abs_path) log('Using image directory: %s' % args.storage_dir) create_dir_if_not_exists(args.storage_dir) - check_bridge(args.pxe_bridge, args.dha_file) + for bridge in args.pxe_bridge: + check_bridge(bridge, args.dha_file) kwargs = {'no_fuel': args.no_fuel, 'fuel_only': args.fuel_only, diff --git a/deploy/environments/virtual_fuel.py b/deploy/environments/virtual_fuel.py index 5a86c9711..b1a76e479 100644 --- a/deploy/environments/virtual_fuel.py +++ b/deploy/environments/virtual_fuel.py @@ -125,7 +125,8 @@ class VirtualFuel(ExecutionEnvironment): disk_path = self.create_image(disk_path, disk_size) self.del_vm_nics() - self.add_vm_nic(self.pxe_bridge) + for bridge in self.pxe_bridge: + self.add_vm_nic(bridge) self.update_vm_template_file() vm_definition_overwrite = self.dha.get_vm_definition('fuel') |