summaryrefslogtreecommitdiffstats
path: root/callback_plugins
diff options
context:
space:
mode:
Diffstat (limited to 'callback_plugins')
-rw-r--r--callback_plugins/aa_version_requirement.py (renamed from callback_plugins/0_version_requirement.py)24
1 files changed, 19 insertions, 5 deletions
diff --git a/callback_plugins/0_version_requirement.py b/callback_plugins/aa_version_requirement.py
index 0c9c2cda9..1cca19a45 100644
--- a/callback_plugins/0_version_requirement.py
+++ b/callback_plugins/aa_version_requirement.py
@@ -1,42 +1,56 @@
#!/usr/bin/python
+"""
+This callback plugin verifies the required minimum version of Ansible
+is installed for proper operation of the OpenShift Ansible Installer.
+The plugin is named with leading `aa_` to ensure this plugin is loaded
+first (alphanumerically) by Ansible.
+"""
import sys
from ansible import __version__
if __version__ < '2.0':
+ # pylint: disable=import-error,no-name-in-module
+ # Disabled because pylint warns when Ansible v2 is installed
from ansible.callbacks import display as pre2_display
CallbackBase = object
def display(*args, **kwargs):
+ """Set up display function for pre Ansible v2"""
pre2_display(*args, **kwargs)
else:
from ansible.plugins.callback import CallbackBase
from ansible.utils.display import Display
def display(*args, **kwargs):
+ """Set up display function for Ansible v2"""
display_instance = Display()
display_instance.display(*args, **kwargs)
# Set to minimum required Ansible version
-required_version = '2.2.0.0'
-DESCRIPTION = "Supported versions: %s or newer" % required_version
+REQUIRED_VERSION = '2.2.0.0'
+DESCRIPTION = "Supported versions: %s or newer" % REQUIRED_VERSION
def version_requirement(version):
- return version >= required_version
+ """Test for minimum required version"""
+ return version >= REQUIRED_VERSION
class CallbackModule(CallbackBase):
"""
- This callback module stops playbook execution if the Ansible
- version is less than required, defined by required_version
+ Ansible callback plugin
"""
CALLBACK_VERSION = 1.0
CALLBACK_NAME = 'version_requirement'
def __init__(self):
+ """
+ Version verification is performed in __init__ to catch the
+ requirement early in the execution of Ansible and fail gracefully
+ """
super(CallbackModule, self).__init__()
if not version_requirement(__version__):