mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-05 02:03:09 +00:00
Move errors from import to connect (#50034)
This commit is contained in:
@@ -138,10 +138,7 @@ try:
|
||||
from napalm.base import ModuleImportError
|
||||
HAS_NAPALM = True
|
||||
except ImportError:
|
||||
raise AnsibleError(
|
||||
'Napalm is required to use the napalm connection type.\n'
|
||||
'Please run pip install napalm'
|
||||
)
|
||||
HAS_NAPALM = False
|
||||
|
||||
display = Display()
|
||||
|
||||
@@ -158,6 +155,11 @@ class Connection(NetworkConnectionBase):
|
||||
self.napalm = None
|
||||
|
||||
def _connect(self):
|
||||
if not HAS_NAPALM:
|
||||
raise AnsibleError(
|
||||
'Napalm is required to use the napalm connection type.\n'
|
||||
'Please run pip install napalm'
|
||||
)
|
||||
super(Connection, self)._connect()
|
||||
|
||||
if not self.connected:
|
||||
|
||||
@@ -188,8 +188,9 @@ try:
|
||||
from ncclient.operations import RPCError
|
||||
from ncclient.transport.errors import SSHUnknownHostError
|
||||
from ncclient.xml_ import to_ele, to_xml
|
||||
HAS_NCCLIENT = True
|
||||
except ImportError:
|
||||
raise AnsibleError("ncclient is not installed")
|
||||
HAS_NCCLIENT = False
|
||||
|
||||
display = Display()
|
||||
|
||||
@@ -252,6 +253,12 @@ class Connection(NetworkConnectionBase):
|
||||
return super(Connection, self).exec_command(cmd, in_data, sudoable)
|
||||
|
||||
def _connect(self):
|
||||
if not HAS_NCCLIENT:
|
||||
raise AnsibleError(
|
||||
'ncclient is required to use the netconf connection type.\n'
|
||||
'Please run pip install ncclient'
|
||||
)
|
||||
|
||||
display.display('ssh connection done, starting ncclient', log_only=True)
|
||||
|
||||
allow_agent = True
|
||||
|
||||
Reference in New Issue
Block a user