diff options
Diffstat (limited to 'apex/tests/test_apex_undercloud.py')
-rw-r--r-- | apex/tests/test_apex_undercloud.py | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/apex/tests/test_apex_undercloud.py b/apex/tests/test_apex_undercloud.py index 9bc91e51..14586528 100644 --- a/apex/tests/test_apex_undercloud.py +++ b/apex/tests/test_apex_undercloud.py @@ -10,6 +10,7 @@ import ipaddress import libvirt import os +import platform import subprocess import unittest @@ -239,13 +240,16 @@ class TestUndercloud(unittest.TestCase): assert_raises(ApexUndercloudException, uc.configure, ns, ds, 'playbook', '/tmp/dir') + @patch('apex.undercloud.undercloud.virt_utils') + @patch('apex.undercloud.undercloud.uc_builder') @patch('apex.undercloud.undercloud.os.remove') @patch('apex.undercloud.undercloud.os.path') @patch('apex.undercloud.undercloud.shutil') @patch.object(Undercloud, '_get_vm', return_value=None) @patch.object(Undercloud, 'create') def test_setup_vols(self, mock_get_vm, mock_create, - mock_shutil, mock_os_path, mock_os_remove): + mock_shutil, mock_os_path, mock_os_remove, + mock_uc_builder, mock_virt_utils): uc = Undercloud('img_path', 'tplt_path', external_network=True) mock_os_path.isfile.return_value = True mock_os_path.exists.return_value = True @@ -255,6 +259,9 @@ class TestUndercloud(unittest.TestCase): src_img = os.path.join(uc.image_path, img_file) dest_img = os.path.join(constants.LIBVIRT_VOLUME_PATH, img_file) mock_shutil.copyfile.assert_called_with(src_img, dest_img) + if platform.machine() != 'aarch64': + mock_uc_builder.expand_disk.assert_called() + mock_virt_utils.virt_customize.assert_called() @patch('apex.undercloud.undercloud.os.path') @patch.object(Undercloud, '_get_vm', return_value=None) @@ -276,13 +283,21 @@ class TestUndercloud(unittest.TestCase): {'--upload': '/root/.ssh/id_rsa.pub:/root/.ssh/authorized_keys'}, {'--run-command': 'chmod 600 /root/.ssh/authorized_keys'}, - {'--run-command': 'restorecon /root/.ssh/authorized_keys'}, + {'--run-command': 'restorecon ' + '-R -v /root/.ssh'}, + {'--run-command': 'id -u stack || useradd -m stack'}, + {'--run-command': 'mkdir -p /home/stack/.ssh'}, + {'--run-command': 'chown stack:stack /home/stack/.ssh'}, {'--run-command': 'cp /root/.ssh/authorized_keys /home/stack/.ssh/'}, {'--run-command': 'chown stack:stack /home/stack/.ssh/authorized_keys'}, {'--run-command': - 'chmod 600 /home/stack/.ssh/authorized_keys'}] + 'chmod 600 /home/stack/.ssh/authorized_keys'}, + {'--run-command': + 'echo "stack ALL = (ALL) NOPASSWD: ALL" >> ' + '/etc/sudoers'}, + {'--run-command': 'touch /etc/cloud/cloud-init.disabled'}] mock_vutils.virt_customize.assert_called_with(test_ops, uc.volume) @patch.object(Undercloud, '_get_vm', return_value=None) @@ -293,6 +308,7 @@ class TestUndercloud(unittest.TestCase): ns_dict = { 'apex': MagicMock(), 'dns-domain': 'dns', + 'ntp': 'pool.ntp.org', 'networks': {'admin': {'cidr': ipaddress.ip_network('192.0.2.0/24'), 'installer_vm': {'ip': '192.0.2.1', @@ -309,7 +325,8 @@ class TestUndercloud(unittest.TestCase): } ns.__getitem__.side_effect = ns_dict.__getitem__ ns.__contains__.side_effect = ns_dict.__contains__ - ds = {'global_params': {}} + ds = {'global_params': {}, + 'deploy_options': {}} Undercloud('img_path', 'tplt_path').generate_config(ns, ds) |