diff options
Diffstat (limited to 'apex')
-rw-r--r-- | apex/deployment/tripleo.py | 11 | ||||
-rw-r--r-- | apex/overcloud/deploy.py | 4 | ||||
-rw-r--r-- | apex/tests/config/common-patches.yaml | 7 | ||||
-rw-r--r-- | apex/tests/test_apex_overcloud_deploy.py | 28 |
4 files changed, 40 insertions, 10 deletions
diff --git a/apex/deployment/tripleo.py b/apex/deployment/tripleo.py index 0f85bbae..c131e161 100644 --- a/apex/deployment/tripleo.py +++ b/apex/deployment/tripleo.py @@ -46,12 +46,13 @@ class ApexDeployment: common_patches = utils.parse_yaml(self.p_file) logging.debug('Content from common patch file is: {}'.format( pprint.pformat(common_patches))) - if 'patches' not in common_patches.keys(): - logging.error('Error parsing common patches file, wrong format. ' - 'Missing "patches" dictionary') + os_version = self.ds['deploy_options']['os_version'] + try: + common_patches = common_patches['patches'][os_version] + except KeyError: + logging.error('Error parsing common patches file, wrong format.') raise ApexDeployException('Invalid format of common patch file') - else: - common_patches = common_patches['patches'] + for ptype in ('undercloud', 'overcloud'): if ptype in common_patches: patches[ptype] = utils.unique(patches[ptype] + diff --git a/apex/overcloud/deploy.py b/apex/overcloud/deploy.py index dd476b6f..e310fa21 100644 --- a/apex/overcloud/deploy.py +++ b/apex/overcloud/deploy.py @@ -395,9 +395,9 @@ def prep_image(ds, ns, img, tmp_dir, root_pw=None, docker_tag=None, "/root/nosdn_vpp_rpms/*.rpm"} ]) + undercloud_admin_ip = ns['networks'][con.ADMIN_NETWORK][ + 'installer_vm']['ip'] if sdn == 'opendaylight': - undercloud_admin_ip = ns['networks'][con.ADMIN_NETWORK][ - 'installer_vm']['ip'] oc_builder.inject_opendaylight( odl_version=ds_opts['odl_version'], image=tmp_oc_image, diff --git a/apex/tests/config/common-patches.yaml b/apex/tests/config/common-patches.yaml index 35dbf449..fef8fcd0 100644 --- a/apex/tests/config/common-patches.yaml +++ b/apex/tests/config/common-patches.yaml @@ -1,5 +1,6 @@ --- patches: - undercloud: - - change-id: I2e0a40d7902f592e4b7bd727f57048111e0bea36 - project: openstack/tripleo-common + queens: + undercloud: + - change-id: I2e0a40d7902f592e4b7bd727f57048111e0bea36 + project: openstack/tripleo-common diff --git a/apex/tests/test_apex_overcloud_deploy.py b/apex/tests/test_apex_overcloud_deploy.py index a9e4bda5..9dd5289d 100644 --- a/apex/tests/test_apex_overcloud_deploy.py +++ b/apex/tests/test_apex_overcloud_deploy.py @@ -284,6 +284,34 @@ class TestOvercloudDeploy(unittest.TestCase): mock_c_builder.add_upstream_patches.assert_called() self.assertListEqual(sorted(rv), ['nova-api', 'opendaylight']) + @patch('apex.overcloud.deploy.c_builder') + @patch('apex.overcloud.deploy.oc_builder') + @patch('apex.overcloud.deploy.virt_utils') + @patch('apex.overcloud.deploy.shutil') + @patch('apex.overcloud.deploy.os.path') + @patch('builtins.open', mock_open()) + def test_prep_image_nosdn_upstream_containers_patches( + self, mock_os_path, mock_shutil, mock_virt_utils, + mock_oc_builder, mock_c_builder): + ds_opts = {'dataplane': 'ovs', + 'sdn_controller': False, + 'odl_version': con.DEFAULT_ODL_VERSION, + 'odl_vpp_netvirt': False} + ds = {'deploy_options': MagicMock(), + 'global_params': MagicMock()} + ds['deploy_options'].__getitem__.side_effect = \ + lambda i: ds_opts.get(i, MagicMock()) + ds['deploy_options'].__contains__.side_effect = \ + lambda i: True if i in ds_opts else MagicMock() + ns = MagicMock() + mock_c_builder.add_upstream_patches.return_value = ['nova-api'] + patches = ['dummy_nova_patch'] + rv = prep_image(ds, ns, 'undercloud.qcow2', '/tmp', root_pw='test', + docker_tag='latest', patches=patches) + mock_virt_utils.virt_customize.assert_called() + mock_c_builder.add_upstream_patches.assert_called() + self.assertListEqual(sorted(rv), ['nova-api']) + @patch('apex.overcloud.deploy.oc_builder') @patch('apex.overcloud.deploy.virt_utils') @patch('apex.overcloud.deploy.shutil') |