summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ansible-wrap-program-hack.patch
diff options
context:
space:
mode:
authorJelle Licht <jlicht@fsfe.org>2017-06-22 21:26:49 +0200
committerLudovic Courtès <ludo@gnu.org>2017-06-29 15:21:18 +0200
commitb786661309ab8194eb5e5a3ebf55d35be2e0bb01 (patch)
treed70493ee84aa131147396226af96fed47d1eedb9 /gnu/packages/patches/ansible-wrap-program-hack.patch
parentaafcfffd93250a2d92f34121c82b54c32797ef35 (diff)
downloadgnu-guix-b786661309ab8194eb5e5a3ebf55d35be2e0bb01.tar
gnu-guix-b786661309ab8194eb5e5a3ebf55d35be2e0bb01.tar.gz
gnu: ansible: Apply experimental patch to deal with wrapping of ansible script.
See <http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html> for the rationale. * gnu/packages/patches/ansible-wrap-program-hack.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/admin.scm (ansible)[source]: Use it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/patches/ansible-wrap-program-hack.patch')
-rw-r--r--gnu/packages/patches/ansible-wrap-program-hack.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/gnu/packages/patches/ansible-wrap-program-hack.patch b/gnu/packages/patches/ansible-wrap-program-hack.patch
new file mode 100644
index 0000000000..c2e1028392
--- /dev/null
+++ b/gnu/packages/patches/ansible-wrap-program-hack.patch
@@ -0,0 +1,22 @@
+Ansible changes its behaviour depending on the name of the script that it is
+called as. Make it deal with guix' .real wrapper scripts.
+
+FIXME: Remove once wrapping ansible works properly.
+See http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html.
+--- ansible-2.3.0.0/bin/ansible 2017-04-12 16:08:05.000000000 +0200
++++ ansible-2.3.0.0-fixed/bin/ansible 2017-05-21 20:11:18.720872385 +0200
+@@ -75,7 +75,13 @@
+ # sometimes add that
+ target = target[:-1]
+
+- if len(target) > 1:
++ if target[-1] == "real" and target[0].startswith('.'):
++ target = target[:-1]
++ target[0] = target[0][1:]
++ if len(target) > 1 and target[1] != "real" :
++ sub = target[1]
++ myclass = "%sCLI" % sub.capitalize()
++ elif len(target) > 2 and target[2] == "real" :
+ sub = target[1]
+ myclass = "%sCLI" % sub.capitalize()
+ elif target[0] == 'ansible':