|
@@ -35,6 +35,7 @@ import os # noqa: F401
|
|
|
import re # noqa: F401
|
|
|
import shutil # noqa: F401
|
|
|
import tempfile # noqa: F401
|
|
|
+import time # noqa: F401
|
|
|
|
|
|
try:
|
|
|
import ruamel.yaml as yaml # noqa: F401
|
|
@@ -618,17 +619,22 @@ def main():
|
|
|
show_duplicates=dict(default=False, required=False, type='bool'),
|
|
|
match_version=dict(default=None, required=False, type='str'),
|
|
|
ignore_excluders=dict(default=False, required=False, type='bool'),
|
|
|
+ retries=dict(default=4, required=False, type='int'),
|
|
|
+ retry_interval=dict(default=5, required=False, type='int'),
|
|
|
),
|
|
|
supports_check_mode=False,
|
|
|
required_if=[('show_duplicates', True, ['name'])],
|
|
|
)
|
|
|
|
|
|
- rval = Repoquery.run_ansible(module.params, module.check_mode)
|
|
|
-
|
|
|
- if 'failed' in rval:
|
|
|
- module.fail_json(**rval)
|
|
|
-
|
|
|
- module.exit_json(**rval)
|
|
|
+ tries = 1
|
|
|
+ while True:
|
|
|
+ rval = Repoquery.run_ansible(module.params, module.check_mode)
|
|
|
+ if 'failed' not in rval:
|
|
|
+ module.exit_json(**rval)
|
|
|
+ elif tries > module.params['retries']:
|
|
|
+ module.fail_json(**rval)
|
|
|
+ tries += 1
|
|
|
+ time.sleep(module.params['retry_interval'])
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|