The commit times out and causes the bellow stacktrace.
In addition to fixing the issue we should make the error message more user friendly. Note that Homer continues to the next host as expected.
Type "yes" to commit, "no" to abort.
> yes
INFO:homer.transports.junos:Committing the configuration on cr1-eqsin.wikimedia.org
ERROR:homer:Failed to commit on cr1-eqsin.wikimedia.org
Traceback (most recent call last):
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/device.py", line 777, in execute
ignore_warning=ignore_warning)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/decorators.py", line 116, in wrapper
rsp = function(self, *args, **kwargs)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/device.py", line 1339, in _rpc_reply
return self._conn.rpc(rpc_cmd_e)._NCElement__doc
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/ncclient-0.6.6-py3.7.egg/ncclient/manager.py", line 236, in execute
huge_tree=self._huge_tree).request(*args, **kwds)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/ncclient-0.6.6-py3.7.egg/ncclient/operations/third_party/juniper/rpc.py", line 49, in request
return self._request(rpc)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/ncclient-0.6.6-py3.7.egg/ncclient/operations/rpc.py", line 355, in _request
raise TimeoutExpiredError('ncclient timed out while waiting for an rpc reply.')
ncclient.operations.errors.TimeoutExpiredError: ncclient timed out while waiting for an rpc reply.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/homer-0.1.2.dev2+g9bd9c7f-py3.7.egg/homer/transports/junos.py", line 83, in commit
self._device.cu.commit(confirm=2, comment=message)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/utils/config.py", line 149, in commit
rsp = self.rpc.commit_configuration(*rpc_varg, **rpc_args)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/rpcmeta.py", line 345, in _exec_rpc
return self._junos.execute(rpc, **dec_args)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/decorators.py", line 76, in wrapper
return function(*args, **kwargs)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/decorators.py", line 31, in wrapper
return function(*args, **kwargs)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/junos_eznc-2.2.1-py3.7.egg/jnpr/junos/device.py", line 781, in execute
raise EzErrors.RpcTimeoutError(self, rpc_cmd_e.tag, self.timeout)
jnpr.junos.exception.RpcTimeoutError: RpcTimeoutError(host: cr1-eqsin.wikimedia.org, cmd: commit-configuration, timeout: 30)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/homer-0.1.2.dev2+g9bd9c7f-py3.7.egg/homer/__init__.py", line 198, in _device_commit
connection.commit(device_config, message, callback, self._ignore_warning)
File "/home/xionox/Documents/Projects/Wikimedia-repos/homer/env/lib/python3.7/site-packages/homer-0.1.2.dev2+g9bd9c7f-py3.7.egg/homer/transports/junos.py", line 89, in commit
raise HomerError('Failed to commit configuration on {fqdn}'.format(fqdn=self._fqdn)) from e
homer.exceptions.HomerError: Failed to commit configuration on cr1-eqsin.wikimedia.org