Add Octavia to Orchestrate

Fixes PROD-12505

Change-Id: Ifc241a94aa5a315e57142495aee6a05d2e09cb65
diff --git a/src/com/mirantis/mk/Orchestrate.groovy b/src/com/mirantis/mk/Orchestrate.groovy
index 558ca72..5e405b7 100644
--- a/src/com/mirantis/mk/Orchestrate.groovy
+++ b/src/com/mirantis/mk/Orchestrate.groovy
@@ -187,6 +187,11 @@
         }
     }
 
+    // Create glance resources
+    if (salt.testTarget(master, 'I@glance:client')) {
+        salt.enforceState(master, 'I@glance:client', 'glance.client', true)
+    }
+
     // Install and check nova service
     if (salt.testTarget(master, 'I@nova:controller')) {
         //runSaltProcessStep(master, 'I@nova:controller', 'state.sls', ['nova'], 1)
@@ -197,6 +202,11 @@
         }
     }
 
+    // Create nova resources
+    if (salt.testTarget(master, 'I@nova:client')) {
+        salt.enforceState(master, 'I@nova:client', 'nova.client', true)
+    }
+
     // Install and check cinder service
     if (salt.testTarget(master, 'I@cinder:controller')) {
         //runSaltProcessStep(master, 'I@cinder:controller', 'state.sls', ['cinder'], 1)
@@ -218,6 +228,11 @@
         }
     }
 
+    // Create neutron resources
+    if (salt.testTarget(master, 'I@neutron:client')) {
+        salt.enforceState(master, 'I@neutron:client', 'neutron.client', true)
+    }
+
     // Install heat service
     if (salt.testTarget(master, 'I@heat:server')) {
         //runSaltProcessStep(master, 'I@heat:server', 'state.sls', ['heat'], 1)
@@ -250,6 +265,11 @@
         salt.enforceState(master, 'I@designate:server and *01*', 'designate.server', true)
         salt.enforceState(master, 'I@designate:server', 'designate.server', true)
     }
+
+    // Install octavia api service
+    if (salt.testTarget(master, 'I@octavia:api')) {
+        salt.enforceState(master, 'I@octavia:api', 'octavia', true)
+    }
 }
 
 
@@ -282,6 +302,13 @@
     def salt = new com.mirantis.mk.Salt()
 
     salt.runSaltProcessStep(master, 'I@neutron:gateway', 'state.apply', [], null, true)
+
+    // install octavia manager services
+    if (salt.testTarget(master, 'I@octavia:manager')) {
+        salt.runSaltProcessStep(master, 'I@salt:master', 'mine.update', ['*'], null, true)
+        salt.enforceState(master, 'I@octavia:manager', 'salt.minion.ca', true)
+        salt.enforceState(master, 'I@octavia:manager', 'salt.minion.cert', true)
+    }
 }