From 398f643c58230704f494159e8eb646bc4f62da3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Tue, 22 Aug 2017 20:25:14 +0200 Subject: [PATCH] Check existence of SSL certs in Foreman callback (#25796) * Fix typo * foreman callback: check existence off SSL certs This leads to confusing error messages later on otherwise. --- lib/ansible/plugins/callback/foreman.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/ansible/plugins/callback/foreman.py b/lib/ansible/plugins/callback/foreman.py index 39147ac44a8..4e97edfc17d 100644 --- a/lib/ansible/plugins/callback/foreman.py +++ b/lib/ansible/plugins/callback/foreman.py @@ -82,6 +82,13 @@ class CallbackModule(CallbackBase): else: self._disable_plugin('The `requests` python module is not installed.') + if self.FOREMAN_URL.startswith('https://'): + if not os.path.exists(self.FOREMAN_SSL_CERT[0]): + self._disable_plugin('FOREMAN_SSL_CERT %s not found.' % self.FOREMAN_SSL_CERT[0]) + + if not os.path.exists(self.FOREMAN_SSL_CERT[1]): + self._disable_plugin('FOREMAN_SSL_KEY %s not found.' % self.FOREMAN_SSL_CERT[1]) + def _disable_plugin(self, msg): self.disabled = True self._display.warning(msg + ' Disabling the Foreman callback plugin.') @@ -94,7 +101,7 @@ class CallbackModule(CallbackBase): self._display.warning("SSL verification of %s disabled" % self.FOREMAN_URL) verify = False - else: # Set ta a CA bundle: + else: # Set to a CA bundle: verify = self.FOREMAN_SSL_VERIFY return verify