Package: booth
Version: 1.0-6
Severity: minor
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu bionic ubuntu-patch autopkgtest

Dear maintainers,

With the upload of booth 1.0-6, the booth autopkgtests are failing in Ubuntu
because the upstream tests are broken for the Ubuntu environment.  The tests
generate a config file which hard-codes an IP address taken from `hostname
-i`; however, by default on an Ubuntu system `hostname -i` will map to
127.0.1.1, an IP address that works perfectly well for connections on the
loopback device but which does *not* show up as a configured IP address
according to netlink, causing booth to fail to start.

I think this is simply a bug in the tests; the test harness is making an
invalid assumption and encoding an IP address into the config that it should
not, and that no actual user would be trying to use.

The attached patch corrects this by simply always using 127.0.0.1 in the
tests.

I have uploaded this patch to Ubuntu to allow the new version of the booth
package to be included in the Ubuntu release.  Please consider applying it
in Debian as well.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org
diff -Nru booth-1.0/debian/patches/series booth-1.0/debian/patches/series
--- booth-1.0/debian/patches/series     2018-01-29 12:32:49.000000000 -0800
+++ booth-1.0/debian/patches/series     2018-04-08 00:28:38.000000000 -0700
@@ -1,3 +1,4 @@
 gcc-7-buffer-size.patch
 fix-failing-unit-tests.patch
 spelling.patch
+wrong-local-ip-assumption-in-tests.patch
diff -Nru booth-1.0/debian/patches/wrong-local-ip-assumption-in-tests.patch 
booth-1.0/debian/patches/wrong-local-ip-assumption-in-tests.patch
--- booth-1.0/debian/patches/wrong-local-ip-assumption-in-tests.patch   
1969-12-31 16:00:00.000000000 -0800
+++ booth-1.0/debian/patches/wrong-local-ip-assumption-in-tests.patch   
2018-04-08 00:28:31.000000000 -0700
@@ -0,0 +1,24 @@
+Description: don't assume `hostname` must map to a configured IP
+ On Ubuntu systems, by default, `hostname -i` will point to 127.0.1.1.  This
+ address works for connections both to and from the loopback interface, but
+ does not show up as a configured address via netlink, which means booth
+ will fail to recognize it as a valid address.
+ .
+ This is only used in the tests, so just patch this out to use 127.0.0.1
+ explicitly instead of by resolving the hostname.
+Author: Steve Langasek <steve.langa...@ubuntu.com>
+
+Index: booth-1.0/test/utils.py
+===================================================================
+--- booth-1.0.orig/test/utils.py
++++ booth-1.0/test/utils.py
+@@ -9,8 +9,6 @@
+     return (stdout, stderr, p.returncode)
+ 
+ def get_IP():
+-    (stdout, stderr, returncode) = run_cmd(['hostname', '-i'])
+-    if returncode != 0:
+-        return '127.0.0.1'
++    return '127.0.0.1'
+     # in case multiple IP addresses are returned, use only the first.
+     return re.sub(r'\s.*', '', stdout)

Reply via email to