From 4c0566331943dbc481f868e5596d0e68934c1309 Mon Sep 17 00:00:00 2001
From: Michael Polenchuk <mpolenchuk@mirantis.com>
Date: Mon, 11 Dec 2017 19:30:17 +0400
Subject: [baremetal] Fixup pike deployment

* up glusterfs.client state before actual volume usage
* handle keystone server state
* specify suitable nova packages list for uca repo
  (consoleproxy vs novncproxy)
* upgrade vcp nodes to get proper cryptography
  library for keystone
* align service names for libvirt & glusterfs

Change-Id: Iaeb7d147e6d407bbeaec2d40fd81037c939c3fe0
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
---
 mcp/config/states/openstack_ha                                   | 8 ++++----
 mcp/config/states/virtual_control_plane                          | 2 ++
 .../classes/cluster/baremetal-mcp-pike-common-ha/infra/kvm.yml   | 5 +++++
 .../cluster/baremetal-mcp-pike-common-ha/openstack_control.yml   | 9 +++++++++
 mcp/reclass/classes/system                                       | 2 +-
 5 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/mcp/config/states/openstack_ha b/mcp/config/states/openstack_ha
index fbddc6e83..62a965401 100755
--- a/mcp/config/states/openstack_ha
+++ b/mcp/config/states/openstack_ha
@@ -22,6 +22,7 @@ salt -I 'rabbitmq:server' cmd.run "rabbitmqctl cluster_status"
 salt -I 'glusterfs:server' state.sls glusterfs.server.service
 salt -I 'glusterfs:server' state.sls glusterfs.server.setup -b 1
 salt -I 'glusterfs:server' cmd.run "gluster peer status; gluster volume status" -b 1
+salt -I 'glusterfs:client' state.sls glusterfs.client
 
 salt -I 'galera:master' state.sls galera
 salt -I 'galera:slave' state.sls galera
@@ -33,15 +34,14 @@ salt -I 'haproxy:proxy' state.sls haproxy
 salt -I 'haproxy:proxy' service.status haproxy
 salt -I 'haproxy:proxy' service.restart rsyslog
 
-salt -I 'keystone:server' state.sls keystone.server -b 1
+set +e; salt -I 'keystone:server' state.sls keystone.server -b 1; set -e
 salt -I 'keystone:server' service.restart apache2
+salt -I 'keystone:server' state.sls keystone.server -b 1
+
 wait_for 30 "salt -I 'keystone:client' state.sls keystone.client"
 salt -I 'keystone:server' cmd.run ". /root/keystonercv3; openstack service list"
 
 salt -I 'glance:server' state.sls glance -b 1
-salt -I 'glusterfs:client' state.sls glusterfs.client
-salt -I 'keystone:server' state.sls keystone.server
-
 salt -I 'nova:controller' state.sls nova -b 1
 salt -I 'heat:server' state.sls heat -b 1
 
diff --git a/mcp/config/states/virtual_control_plane b/mcp/config/states/virtual_control_plane
index 5de4673cc..3856bef10 100755
--- a/mcp/config/states/virtual_control_plane
+++ b/mcp/config/states/virtual_control_plane
@@ -63,3 +63,5 @@ salt -C 'prx*' file.write /etc/dhcp/dhclient-enter-hooks.d/no-default-route \
 salt -C 'prx*' system.reboot
 wait_for 30 "! salt -C 'prx*' test.ping | " \
   "tee /dev/stderr | grep -Fq 'Not connected'"
+
+salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' pkg.upgrade refresh=False
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/infra/kvm.yml
index df94e284f..a47ef2aa7 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/infra/kvm.yml
@@ -39,6 +39,10 @@ parameters:
     network:
       remove_iface_files:
         - '/etc/network/interfaces.d/50-cloud-init.cfg'
+  libvirt:
+    server:
+      service: libvirtd
+      config_sys: /etc/default/libvirtd
   salt:
     control:
       size:  # RAM 4096,8192,16384,32768,65536
@@ -136,6 +140,7 @@ parameters:
           model: virtio
   glusterfs:
     server:
+      service: glusterd
       volumes:
         nova_instances:
           storage: /srv/glusterfs/nova_instances
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/openstack_control.yml b/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/openstack_control.yml
index 12fc7b07e..9f8b7f40e 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/openstack_control.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-pike-common-ha/openstack_control.yml
@@ -46,6 +46,15 @@ parameters:
       interface:
         dhcp: ${_param:linux_dhcp_interface}
         single: ${_param:linux_single_interface}
+  nova:
+    controller:
+      pkgs:
+        - nova-api
+        - nova-conductor
+        - nova-consoleauth
+        - nova-novncproxy
+        - nova-scheduler
+        - python-novaclient
   neutron:
     server:
       vlan_aware_vms: true
diff --git a/mcp/reclass/classes/system b/mcp/reclass/classes/system
index 0a17807f3..74f5df259 160000
--- a/mcp/reclass/classes/system
+++ b/mcp/reclass/classes/system
@@ -1 +1 @@
-Subproject commit 0a17807f39aac95f9e0de8643f64e5116bdd1a1e
+Subproject commit 74f5df259264c330637120ace4652c3a25aae255
-- 
cgit