summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ansible-wrap-program-hack.patch
blob: c2e10283924acad37d83430271c4b9eeddf93b16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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':