Add retry for glusterfs.server.setup state during pipeline execution
Collectd locking gluster periodically and during pipeline execution we may got
the following error:
`CommandExecutionError: Another transaction is in progress for gerrit. Please try again after sometime.`
To avoid this behavior we need several retries.
Change-Id: Ic9f911d6c1bcf8f2066a15c12bb88b832444bd6d
diff --git a/src/com/mirantis/mk/Orchestrate.groovy b/src/com/mirantis/mk/Orchestrate.groovy
index 4e16b83..cf289d2 100644
--- a/src/com/mirantis/mk/Orchestrate.groovy
+++ b/src/com/mirantis/mk/Orchestrate.groovy
@@ -61,7 +61,11 @@
// Check the keepalived VIPs
salt.runSaltProcessStep(master, 'I@keepalived:cluster', 'cmd.run', ['ip a | grep 172.16.10.2'])
- salt.enforceState(master, 'I@glusterfs:server and *01*', 'glusterfs.server.setup', true)
+ withEnv(['ASK_ON_ERROR=false']){
+ retry(5) {
+ salt.enforceState(master, 'I@glusterfs:server and *01*', 'glusterfs.server.setup', true)
+ }
+ }
salt.runSaltProcessStep(master, 'I@glusterfs:server', 'cmd.run', ['gluster peer status'], null, true)
salt.runSaltProcessStep(master, 'I@glusterfs:server', 'cmd.run', ['gluster volume status'], null, true)
@@ -238,7 +242,11 @@
// Setup glusterfs
if (common.checkContains('INSTALL', 'glusterfs')) {
- salt.enforceState(master, 'I@glusterfs:server and *01*', 'glusterfs.server.setup')
+ withEnv(['ASK_ON_ERROR=false']){
+ retry(5) {
+ salt.enforceState(master, 'I@glusterfs:server and *01*', 'glusterfs.server.setup')
+ }
+ }
salt.runSaltProcessStep(master, 'I@glusterfs:server', 'cmd.run', ['gluster peer status'])
salt.runSaltProcessStep(master, 'I@glusterfs:server', 'cmd.run', ['gluster volume status'])
}