summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Rozet <trozet@redhat.com>2017-11-21 11:25:50 -0500
committerTim Rozet <trozet@redhat.com>2017-11-28 11:03:20 -0500
commit33aebc3b51ce4bc816499a8b68a7feca77a12c6c (patch)
treefbbe43f7e5b6cd0031db856d8fb17b36e531fa18
parent2c26b89b546983ec2621f6dce8715873fe6ab774 (diff)
Fixes upstream deployments
There was an issue with patching the overcloud where the patch binary is missing, making it impossible to apply patches. This change install patch now on the image. Also, although deployments were successful, storage was not working. This is because by default upstream does not apply Ceph OSDs to compute nodes for hyperconverged Ceph, but we use this as our standard deployment in Apex. This patch inserts CephOSD into the default Compute role. Note: we normally override role's services in regular Apex deployments so we do not hit this issue there. Change-Id: I5bddda4784dc00148395863ae0990343a4159602 Signed-off-by: Tim Rozet <trozet@redhat.com>
-rw-r--r--apex/builders/common_builder.py4
-rw-r--r--apex/tests/test_apex_common_builder.py1
-rw-r--r--lib/ansible/playbooks/deploy_overcloud.yml8
3 files changed, 11 insertions, 2 deletions
diff --git a/apex/builders/common_builder.py b/apex/builders/common_builder.py
index 101860cd..fd3bcc3d 100644
--- a/apex/builders/common_builder.py
+++ b/apex/builders/common_builder.py
@@ -47,7 +47,7 @@ def add_upstream_patches(patches, image, tmp_dir,
in patch)
:return: None
"""
- virt_ops = list()
+ virt_ops = [{con.VIRT_INSTALL: 'patch'}]
logging.debug("Evaluating upstream patches:\n{}".format(patches))
for patch in patches:
assert isinstance(patch, dict)
@@ -73,7 +73,7 @@ def add_upstream_patches(patches, image, tmp_dir,
image))
else:
logging.info("Ignoring patch:\n{}".format(patch))
- if virt_ops:
+ if len(virt_ops) > 1:
virt_utils.virt_customize(virt_ops, image)
diff --git a/apex/tests/test_apex_common_builder.py b/apex/tests/test_apex_common_builder.py
index d042d2ba..c32f72c9 100644
--- a/apex/tests/test_apex_common_builder.py
+++ b/apex/tests/test_apex_common_builder.py
@@ -58,6 +58,7 @@ class TestCommonBuilder(unittest.TestCase):
patch_file = "{}.patch".format(change_id)
patch_file_path = "/dummytmp/{}".format(patch_file)
test_virt_ops = [
+ {con.VIRT_INSTALL: 'patch'},
{con.VIRT_UPLOAD: "{}:{}".format(patch_file_path,
project_path)},
{con.VIRT_RUN_CMD: "cd {} && patch -p1 < {}".format(
diff --git a/lib/ansible/playbooks/deploy_overcloud.yml b/lib/ansible/playbooks/deploy_overcloud.yml
index 8acfa764..4d55c8fc 100644
--- a/lib/ansible/playbooks/deploy_overcloud.yml
+++ b/lib/ansible/playbooks/deploy_overcloud.yml
@@ -35,6 +35,14 @@
state: restarted
enabled: yes
become: yes
+ - name: Insert Ceph OSDs into Compute role
+ lineinfile:
+ path: /usr/share/openstack-tripleo-heat-templates/roles_data.yaml
+ insertbefore: 'OS::TripleO::Services::NovaCompute'
+ line: ' - OS::TripleO::Services::CephOSD'
+ owner: root
+ group: root
+ become: yes
- name: Upload glance images
shell: "{{ stackrc }} && openstack overcloud image upload"
become: yes