Fix broken Gambia repos 13/65713/3
authorTim Rozet <trozet@redhat.com>
Mon, 10 Dec 2018 19:20:44 +0000 (14:20 -0500)
committerTim Rozet <trozet@redhat.com>
Mon, 10 Dec 2018 19:53:35 +0000 (14:53 -0500)
The undercloud disk image repos look to be stale. This patch updates the
repos at deploy time to ensure the latest repos are always used. Similar
to what was done in:
https://gerrit.opnfv.org/gerrit/#/c/64493/

JIRA: APEX-656

Change-Id: I4eb2d0a8486b47a583434a9b83e1cc9d7274d9ad
Signed-off-by: Tim Rozet <trozet@redhat.com>
apex/builders/undercloud_builder.py
apex/common/constants.py
apex/deploy.py

index 4efd00d..9c61b87 100644 (file)
@@ -59,3 +59,17 @@ def inject_calipso_installer(tmp_dir, image):
 
 # TODO(trozet): add unit testing for calipso injector
 # TODO(trozet): add rest of build for undercloud here as well
+
+
+def update_repos(image, branch):
+    virt_ops = [
+        {con.VIRT_RUN_CMD: "rm -f /etc/yum.repos.d/delorean*"},
+        {con.VIRT_RUN_CMD: "yum-config-manager --add-repo "
+                           "https://trunk.rdoproject.org/centos7/{}"
+                           "/delorean.repo".format(con.RDO_TAG)},
+        {con.VIRT_RUN_CMD: "yum clean all"},
+        {con.VIRT_INSTALL: "python2-tripleo-repos"},
+        {con.VIRT_RUN_CMD: "tripleo-repos -b {} {} ceph".format(branch,
+                                                                con.RDO_TAG)}
+    ]
+    virt_utils.virt_customize(virt_ops, image)
index 02fafbd..1a94f16 100644 (file)
@@ -53,6 +53,7 @@ PUPPET_ODL_URL = 'https://git.opendaylight.org/gerrit/integration/packaging' \
 DEBUG_OVERCLOUD_PW = 'opnfvapex'
 NET_ENV_FILE = 'network-environment.yaml'
 DEPLOY_TIMEOUT = 120
+RDO_TAG = 'current-tripleo'
 UPSTREAM_RDO = 'https://images.rdoproject.org/{}/delorean/current' \
                '-tripleo-rdo/'.format(DEFAULT_OS_VERSION)
 OPENSTACK_GERRIT = 'https://review.openstack.org'
index 64374a9..fa46845 100644 (file)
@@ -392,6 +392,9 @@ def main():
         uc_fetch_img = os.path.join(args.image_dir, 'undercloud.qcow2')
         shutil.copyfile(uc_fetch_img, uc_image)
         # prep undercloud with required packages
+        if platform.machine() != 'aarch64':
+            uc_builder.update_repos(image=uc_image,
+                                    branch=branch.replace('stable/', ''))
         uc_builder.add_upstream_packages(uc_image)
         uc_builder.inject_calipso_installer(APEX_TEMP_DIR, uc_image)
         # upgrade OVS in undercloud