[PATCH] gnu: ansible: Apply experimental patch to deal with wrapping of ansible script.

  • Done
  • quality assurance status badge
Details
3 participants
  • Jelle Licht
  • Ludovic Courtès
  • Jelle Licht
Owner
unassigned
Submitted by
Jelle Licht
Severity
normal

Debbugs page

Jelle Licht wrote 8 years ago
(address . guix-patches@gnu.org)(name . Jelle Licht)(address . jlicht@fsfe.org)
20170622193620.3381-1-jlicht@fsfe.org
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.
---
gnu/local.mk | 1 +
gnu/packages/admin.scm | 5 ++++-
gnu/packages/patches/ansible-wrap-program-hack.patch | 17 +++++++++++++++++
3 files changed, 22 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/ansible-wrap-program-hack.patch

Toggle diff (53 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 88ea8daf4..bed24a841 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -501,6 +501,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
+ %D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 35679495f..81a53413f 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1366,7 +1366,10 @@ of supported upstream metrics systems simultaneously.")
(uri (pypi-uri "ansible" version))
(sha256
(base32
- "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))))
+ "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
+ ;; FIXME: Remove once wrapping ansible works properly
+ ;; See http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html
+ (patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
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 000000000..bc7eb9d31
--- /dev/null
+++ b/gnu/packages/patches/ansible-wrap-program-hack.patch
@@ -0,0 +1,17 @@
+--- 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':
--
2.13.1
Ludovic Courtès wrote 8 years ago
(name . Jelle Licht)(address . jlicht@fsfe.org)(address . 27452@debbugs.gnu.org)
87a84v6qas.fsf@gnu.org
Hello,

Jelle Licht <jlicht@fsfe.org> skribis:

Toggle quote (51 lines)
> 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.
> ---
> gnu/local.mk | 1 +
> gnu/packages/admin.scm | 5 ++++-
> gnu/packages/patches/ansible-wrap-program-hack.patch | 17 +++++++++++++++++
> 3 files changed, 22 insertions(+), 1 deletion(-)
> create mode 100644 gnu/packages/patches/ansible-wrap-program-hack.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 88ea8daf4..bed24a841 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -501,6 +501,7 @@ dist_patch_DATA = \
> %D%/packages/patches/aegis-test-fixup-1.patch \
> %D%/packages/patches/aegis-test-fixup-2.patch \
> %D%/packages/patches/agg-am_c_prototype.patch \
> + %D%/packages/patches/ansible-wrap-program-hack.patch \
> %D%/packages/patches/antiword-CVE-2014-8123.patch \
> %D%/packages/patches/apr-skip-getservbyname-test.patch \
> %D%/packages/patches/aspell-default-dict-dir.patch \
> diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
> index 35679495f..81a53413f 100644
> --- a/gnu/packages/admin.scm
> +++ b/gnu/packages/admin.scm
> @@ -1366,7 +1366,10 @@ of supported upstream metrics systems simultaneously.")
> (uri (pypi-uri "ansible" version))
> (sha256
> (base32
> - "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))))
> + "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
> + ;; FIXME: Remove once wrapping ansible works properly
> + ;; See http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html
> + (patches (search-patches "ansible-wrap-program-hack.patch"))))
> (build-system python-build-system)
> (native-inputs
> `(("python2-pycrypto" ,python2-pycrypto)
> 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 000000000..bc7eb9d31
> --- /dev/null
> +++ b/gnu/packages/patches/ansible-wrap-program-hack.patch
> @@ -0,0 +1,17 @@
> +--- 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 @@

Could you move the FIXME and URL to the .patch file, and also add a
sentence explaining what it does?

OK with these changes, thanks!

Ludo’.
Jelle Licht wrote 8 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 27452@debbugs.gnu.org)
CAPsKtfKBy-Pn0tfHYavEHKLmkwVdehoY5NN7LQQJV3LRVdhfCA@mail.gmail.com
Hello,

2017-06-26 11:39 GMT+02:00 Ludovic Courtès <ludo@gnu.org>:

Toggle quote (66 lines)
> Hello,
>
> Jelle Licht <jlicht@fsfe.org> skribis:
>
> > 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.
> > ---
> > gnu/local.mk | 1 +
> > gnu/packages/admin.scm | 5 ++++-
> > gnu/packages/patches/ansible-wrap-program-hack.patch | 17
> +++++++++++++++++
> > 3 files changed, 22 insertions(+), 1 deletion(-)
> > create mode 100644 gnu/packages/patches/ansible-wrap-program-hack.patch
> >
> > diff --git a/gnu/local.mk b/gnu/local.mk
> > index 88ea8daf4..bed24a841 100644
> > --- a/gnu/local.mk
> > +++ b/gnu/local.mk
> > @@ -501,6 +501,7 @@ dist_patch_DATA =
> \
> > %D%/packages/patches/aegis-test-fixup-1.patch \
> > %D%/packages/patches/aegis-test-fixup-2.patch \
> > %D%/packages/patches/agg-am_c_prototype.patch \
> > + %D%/packages/patches/ansible-wrap-program-hack.patch \
> > %D%/packages/patches/antiword-CVE-2014-8123.patch \
> > %D%/packages/patches/apr-skip-getservbyname-test.patch \
> > %D%/packages/patches/aspell-default-dict-dir.patch \
> > diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
> > index 35679495f..81a53413f 100644
> > --- a/gnu/packages/admin.scm
> > +++ b/gnu/packages/admin.scm
> > @@ -1366,7 +1366,10 @@ of supported upstream metrics systems
> simultaneously.")
> > (uri (pypi-uri "ansible" version))
> > (sha256
> > (base32
> > - "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))))
> > + "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
> > + ;; FIXME: Remove once wrapping ansible works properly
> > + ;; See http://lists.gnu.org/archive/h
> tml/bug-guix/2017-05/msg00015.html
> > + (patches (search-patches "ansible-wrap-program-hack.patch"))))
> > (build-system python-build-system)
> > (native-inputs
> > `(("python2-pycrypto" ,python2-pycrypto)
> > 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 000000000..bc7eb9d31
> > --- /dev/null
> > +++ b/gnu/packages/patches/ansible-wrap-program-hack.patch
> > @@ -0,0 +1,17 @@
> > +--- 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 @@
>
> Could you move the FIXME and URL to the .patch file, and also add a
> sentence explaining what it does?
>

I am not familiar enough with .patch files to know what you expect me to
do.
I should add these comments /in/ the .patch file?

Toggle quote (5 lines)
>
> OK with these changes, thanks!
>
> Ludo’.
>
Attachment: file
Ludovic Courtès wrote 8 years ago
(name . Jelle Licht)(address . jlicht@fsfe.org)(address . 27452@debbugs.gnu.org)
87efu66856.fsf@gnu.org
Jelle Licht <jlicht@fsfe.org> skribis:

Toggle quote (3 lines)
> I am not familiar enough with .patch files to know what you expect me to do.
> I should add these comments /in/ the .patch file?

Yes, at the top of the file, please. You can look for examples in the
other files in there.

HTH!

Ludo’.
Ludovic Courtès wrote 8 years ago
(name . Jelle Licht)(address . wordempire@gmail.com)
87vania79k.fsf@gnu.org
Jelle Licht <wordempire@gmail.com> skribis:

Toggle quote (13 lines)
> From 1c5ac5bac497f415e20540a193e36dc02d012bf2 Mon Sep 17 00:00:00 2001
> From: Jelle Licht <jlicht@fsfe.org>
> Date: Thu, 22 Jun 2017 21:26:49 +0200
> Subject: [PATCH] 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.

Perfect, thanks! :-)

Ludo'.
Jelle Licht wrote 8 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)
8760fitzzv.fsf@gmail.com
Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (12 lines)
> Jelle Licht <jlicht@fsfe.org> skribis:
>
>> I am not familiar enough with .patch files to know what you expect me to do.
>> I should add these comments /in/ the .patch file?
>
> Yes, at the top of the file, please. You can look for examples in the
> other files in there.
>
> HTH!
>
> Ludo’.

Thanks for the pointers. Attached you will find the updated patch.

Jelle.
From 1c5ac5bac497f415e20540a193e36dc02d012bf2 Mon Sep 17 00:00:00 2001
From: Jelle Licht <jlicht@fsfe.org>
Date: Thu, 22 Jun 2017 21:26:49 +0200
Subject: [PATCH] gnu: ansible: Apply experimental patch to deal with wrapping
of ansible script.

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.
---
gnu/local.mk | 1 +
gnu/packages/admin.scm | 3 ++-
.../patches/ansible-wrap-program-hack.patch | 22 ++++++++++++++++++++++
3 files changed, 25 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/ansible-wrap-program-hack.patch

Toggle diff (56 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 5d024de07..f3092d580 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -501,6 +501,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
+ %D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 96ca6a76d..2cc5200a0 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1366,7 +1366,8 @@ of supported upstream metrics systems simultaneously.")
(uri (pypi-uri "ansible" version))
(sha256
(base32
- "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))))
+ "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
+ (patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
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 000000000..c2e102839
--- /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':
--
2.13.1
Ludovic Courtès wrote 8 years ago
(name . Jelle Licht)(address . wordempire@gmail.com)
871sq3oswe.fsf@gnu.org
Jelle Licht <wordempire@gmail.com> skribis:

Toggle quote (13 lines)
>>From 1c5ac5bac497f415e20540a193e36dc02d012bf2 Mon Sep 17 00:00:00 2001
> From: Jelle Licht <jlicht@fsfe.org>
> Date: Thu, 22 Jun 2017 21:26:49 +0200
> Subject: [PATCH] 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.

Committed, thanks!

Ludo'.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 27452@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 27452
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help