From 8f75445a37099590f36ce6044109209c67ef0deb Mon Sep 17 00:00:00 2001 From: Charalampos Kominos Date: Mon, 1 Oct 2018 13:12:46 +0200 Subject: Bring in aarch64 support in apex RDO builds packages which are aarch64 compatible but some configuration is needed to succesfully deploy. This change: - Prepares the aarch64 docker.io repo as the source for Kolla Containers - Configures VM sizing for aarch64 undercloud. - Configures VM sizing for aarch64 virtual deploy targets. Vms need to be larger on aarch64 compared to x86 to avoid starvation of resources. (MYSQL) - Configures vda2 as the location of the Linux Kernel in aarch64 in an UEFI system - Configures the vNICs to be on the pci-bus instead of the virtio-mmio bus.This will enalbe the Nics to come up in the same order as the x86 ones, so the extra configuration in ansible is not needed - Configures apex to use a stable version of the ceph:daemon container - Configure apex for containerized undercloud in Rocky - Add extra ansible.cfg file for aarch64 which increases waiting times in ansible for aarch64 - Provide helper scripts for DIB to create aarch64 UEFI images Known limitations: - Selinux is interfering with DHCP requests in ironic and ssh so it must be disabled before the deploy command is ran. - The aarch64 containers are frozen for in this commit: https://trunk.rdoproject.org/centos7-rocky/f3/18/f3180de6439333a2813119ad4b00ef897fcd596f_70883030 - The 600s timeout defined in : https://bugs.launchpad.net/tripleo/+bug/1789680 is not enough for aarch64. A value of 1200s is recommended JIRA: APEX-619 Change-Id: Ia3f067821e12bba44939bbf8c0e4676f2da70239 Signed-off-by: Charalampos Kominos Signed-off-by: ting wu --- apex/tests/test_apex_common_builder.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'apex/tests') diff --git a/apex/tests/test_apex_common_builder.py b/apex/tests/test_apex_common_builder.py index dc4383b9..3ff95bb5 100644 --- a/apex/tests/test_apex_common_builder.py +++ b/apex/tests/test_apex_common_builder.py @@ -57,7 +57,8 @@ class TestCommonBuilder(unittest.TestCase): dummy_change = {'submitted': '2017-06-05 20:23:09.000000000', 'status': 'MERGED'} self.assertTrue(c_builder.is_patch_promoted(dummy_change, - 'master')) + 'master', + con.DOCKERHUB_OOO)) def test_is_patch_promoted_docker(self): dummy_change = {'submitted': '2017-06-05 20:23:09.000000000', @@ -65,13 +66,15 @@ class TestCommonBuilder(unittest.TestCase): dummy_image = 'centos-binary-opendaylight' self.assertTrue(c_builder.is_patch_promoted(dummy_change, 'master', + con.DOCKERHUB_OOO, docker_image=dummy_image)) def test_patch_not_promoted(self): dummy_change = {'submitted': '2900-06-05 20:23:09.000000000', 'status': 'MERGED'} self.assertFalse(c_builder.is_patch_promoted(dummy_change, - 'master')) + 'master', + con.DOCKERHUB_OOO)) def test_patch_not_promoted_docker(self): dummy_change = {'submitted': '2900-06-05 20:23:09.000000000', @@ -79,13 +82,15 @@ class TestCommonBuilder(unittest.TestCase): dummy_image = 'centos-binary-opendaylight' self.assertFalse(c_builder.is_patch_promoted(dummy_change, 'master', + con.DOCKERHUB_OOO, docker_image=dummy_image)) def test_patch_not_promoted_and_not_merged(self): dummy_change = {'submitted': '2900-06-05 20:23:09.000000000', 'status': 'BLAH'} self.assertFalse(c_builder.is_patch_promoted(dummy_change, - 'master')) + 'master', + con.DOCKERHUB_OOO)) @patch('builtins.open', mock_open()) @patch('apex.builders.common_builder.is_patch_promoted') @@ -241,7 +246,8 @@ class TestCommonBuilder(unittest.TestCase): '/dummytmp/dummyrepo.tar') def test_project_to_docker_image(self): - found_services = c_builder.project_to_docker_image(project='nova') + found_services = c_builder.project_to_docker_image('nova', + con.DOCKERHUB_OOO) assert 'nova-api' in found_services @patch('apex.common.utils.open_webpage') @@ -250,7 +256,8 @@ class TestCommonBuilder(unittest.TestCase): mock_open_web.return_value = b'{"blah": "blah"}' self.assertRaises(exceptions.ApexCommonBuilderException, c_builder.project_to_docker_image, - 'nova') + 'nova', + con.DOCKERHUB_OOO) def test_get_neutron_driver(self): ds_opts = {'dataplane': 'fdio', -- cgit 1.2.3-korg