- Use separate function to check contrail-api readiness
Depends-On: https://gerrit.mcp.mirantis.com/#/c/34507/
Related-PROD: PROD-26827
Change-Id: Ieab2e4f9e23bb76ff6f730c4238c01c56a27fdf2
(cherry picked from commit 328a5721368c684e5ad6249d667102cfd7bd7972)
diff --git a/src/com/mirantis/mk/Orchestrate.groovy b/src/com/mirantis/mk/Orchestrate.groovy
index d7f7885..e48b888 100644
--- a/src/com/mirantis/mk/Orchestrate.groovy
+++ b/src/com/mirantis/mk/Orchestrate.groovy
@@ -560,11 +560,18 @@
salt.enforceStateWithExclude([saltId: master, target: "I@opencontrail:collector ${extra_tgt}", state: "opencontrail", excludedStates: "opencontrail.client"])
salt.enforceStateWithTest([saltId: master, target: "( I@opencontrail:control or I@opencontrail:collector ) ${extra_tgt}", state: 'docker.client', testTargetMatcher: "I@docker:client and I@opencontrail:control ${extra_tgt}"])
+}
- // Waiting until Contrail API is started
- def apiCheckResult = salt.getReturnValues(salt.runSaltProcessStep(master, "I@opencontrail:control:role:primary", 'contrail_health.get_api_status', ['wait_for=300', 'tries=20']))
+
+def checkContrailApiReadiness(master, extra_tgt = '') {
+ def common = new com.mirantis.mk.Common()
+ def salt = new com.mirantis.mk.Salt()
+
+ def apiCheckResult = salt.getReturnValues(salt.runSaltProcessStep(master, "I@opencontrail:control:role:primary ${extra_tgt}", 'contrail_health.get_api_status', ['wait_for=300', 'tries=20']))
if (!apiCheckResult){
throw new Exception("Contrail is not working after deployment: contrail-api service is not in healthy state")
+ } else {
+ common.infoMsg('Contrail API is ready to service requests')
}
}