diff --git a/lib/ansible/module_utils/network/f5/bigip.py b/lib/ansible/module_utils/network/f5/bigip.py index 2065d41299..cb4e7c29ed 100644 --- a/lib/ansible/module_utils/network/f5/bigip.py +++ b/lib/ansible/module_utils/network/f5/bigip.py @@ -37,7 +37,7 @@ class F5Client(F5BaseClient): if self._client: return self._client - for x in range(0, 60): + for x in range(0, 10): try: result = ManagementRoot( self.provider['server'], @@ -53,7 +53,7 @@ class F5Client(F5BaseClient): exc = ex time.sleep(1) error = 'Unable to connect to {0} on port {1}.'.format( - self.params['server'], self.params['server_port'] + self.provider['server'], self.provider['server_port'] ) if exc is not None: @@ -71,7 +71,6 @@ class F5RestClient(F5BaseClient): exc = None if self._client: return self._client - for x in range(0, 10): try: url = "https://{0}:{1}/mgmt/shared/authn/login".format( diff --git a/lib/ansible/module_utils/network/f5/bigiq.py b/lib/ansible/module_utils/network/f5/bigiq.py index fbae3a676b..6ff374b4db 100644 --- a/lib/ansible/module_utils/network/f5/bigiq.py +++ b/lib/ansible/module_utils/network/f5/bigiq.py @@ -29,32 +29,33 @@ except ImportError: class F5Client(F5BaseClient): + def __init__(self, *args, **kwargs): + super(F5Client, self).__init__(*args, **kwargs) + self.provider = self.merge_provider_params() + @property def api(self): exc = None if self._client: return self._client - for x in range(0, 3): + for x in range(0, 10): try: - server = self.params['provider']['server'] or self.params['server'] - user = self.params['provider']['user'] or self.params['user'] - password = self.params['provider']['password'] or self.params['password'] - server_port = self.params['provider']['server_port'] or self.params['server_port'] or 443 - validate_certs = self.params['provider']['validate_certs'] or self.params['validate_certs'] - result = ManagementRoot( - server, - user, - password, - port=server_port, - verify=validate_certs + self.provider['server'], + self.provider['user'], + self.provider['password'], + port=self.provider['server_port'], + verify=self.provider['validate_certs'] ) self._client = result return self._client except Exception as ex: exc = ex time.sleep(1) - error = 'Unable to connect to {0} on port {1}.'.format(self.params['server'], self.params['server_port']) + error = 'Unable to connect to {0} on port {1}.'.format( + self.provider['server'], self.provider['server_port'] + ) + if exc is not None: error += ' The reported error was "{0}".'.format(str(exc)) raise F5ModuleError(error)