From 2bb4191613390c1e44018c317b028447595e8fe9 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 20 Nov 2019 14:55:07 +0100 Subject: [PATCH] Ansible: Fix connection plugins and add support for NETCONF (#72370) * ansible: Fix use of connection plugins Ansible tries to execute the ansible-connection script as a python script from within it's task executor. This does not work when it is encapsulated in a shell script. Therefore remove the call to the python interpreter and use the wrapped version directly. Fixes #71342 * ansible: Add ncclient to support NETCONF connections * ansible: Some cleanups - boto was dropped from propagatedBuildInputs in 4af94d0f - lib/ansible/constants.py does not have "/usr" anywhere in v2.4..v2.9 --- pkgs/development/python-modules/ansible/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/ansible/default.nix b/pkgs/development/python-modules/ansible/default.nix index fcc984faf8c2..74775cf756ff 100644 --- a/pkgs/development/python-modules/ansible/default.nix +++ b/pkgs/development/python-modules/ansible/default.nix @@ -6,12 +6,12 @@ , jinja2 , pyyaml , httplib2 -, boto , six , netaddr , dnspython , jmespath , dopy +, ncclient , windowsSupport ? false , pywinrm }: @@ -28,7 +28,9 @@ buildPythonPackage rec { }; prePatch = '' - sed -i "s,/usr/,$out," lib/ansible/constants.py + # ansible-connection is wrapped, so make sure it's not passed + # through the python interpreter. + sed -i "s/\[python, /[/" lib/ansible/executor/task_executor.py ''; postInstall = '' @@ -39,7 +41,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ pycrypto paramiko jinja2 pyyaml httplib2 - six netaddr dnspython jmespath dopy + six netaddr dnspython jmespath dopy ncclient ] ++ lib.optional windowsSupport pywinrm; # dificult to test