Fix import of gce/gcdns without a libcloud module
The module level function defs for gcdns_connect() and gce_connect() provide a default arg for 'provider' that references into the libcloud module. If the libcloud modules were not installed, the gce/gcdns python modules would throw ImportError. Let the provider arg default to None and if not provided, set it to the default libcloud.compute.types.Provider.* value if the modules are installed.
This commit is contained in:
parent
409d95d67e
commit
fa1d55f683
2 changed files with 4 additions and 2 deletions
|
@ -40,11 +40,12 @@ except ImportError:
|
|||
USER_AGENT_PRODUCT = "Ansible-gcdns"
|
||||
USER_AGENT_VERSION = "v1"
|
||||
|
||||
def gcdns_connect(module, provider=Provider.GOOGLE):
|
||||
def gcdns_connect(module, provider=None):
|
||||
"""Return a GCP connection for Google Cloud DNS."""
|
||||
if not HAS_LIBCLOUD_BASE:
|
||||
module.fail_json(msg='libcloud must be installed to use this module')
|
||||
|
||||
provider = provider or Provider.GOOGLE
|
||||
return gcp_connect(module, provider, get_driver, USER_AGENT_PRODUCT, USER_AGENT_VERSION)
|
||||
|
||||
def unexpected_error_msg(error):
|
||||
|
|
|
@ -40,10 +40,11 @@ except ImportError:
|
|||
USER_AGENT_PRODUCT = "Ansible-gce"
|
||||
USER_AGENT_VERSION = "v1"
|
||||
|
||||
def gce_connect(module, provider=Provider.GCE):
|
||||
def gce_connect(module, provider=None):
|
||||
"""Return a GCP connection for Google Compute Engine."""
|
||||
if not HAS_LIBCLOUD_BASE:
|
||||
module.fail_json(msg='libcloud must be installed to use this module')
|
||||
provider = provider or Provider.GCE
|
||||
|
||||
return gcp_connect(module, provider, get_driver, USER_AGENT_PRODUCT, USER_AGENT_VERSION)
|
||||
|
||||
|
|
Loading…
Reference in a new issue