Public bug reported:

Some tests in d/t/control are not meant to be run on non-amd64 architectures. 
The test script tries to detect this and skip them:
arch = platform.machine()
if sys.argv[1].startswith('isa_') and arch == 'x86_64':
    print("Skipping {} test for {} architecture".format(sys.argv[1], arch))
else:
...

In eoan, at some point during the development cycle, the VM running i386 tests 
is actually on an amd64 kernel:
"""
...
-name adt-eoan-i386-python-pyeclib-20191014-091043 --image 
adt/ubuntu-eoan-i386-server
...
Get:5 http://ftpmaster.internal/ubuntu eoan-proposed/universe Sources [127 kB]
Get:6 http://ftpmaster.internal/ubuntu eoan-proposed/main amd64 Packages [18.0 
kB]
Get:7 http://ftpmaster.internal/ubuntu eoan-proposed/main i386 Packages [12.9 
kB]
...
linux-generic:amd64 is already the newest version (5.3.0.18.21).
...
utopkgtest [09:11:51]: testbed running kernel: Linux 5.3.0-18-generic 
#19-Ubuntu SMP Tue Oct 8 20:14:06 UTC 2019
autopkgtest [09:11:51]: testbed dpkg architecture: i386
"""

In such an environment, platform.machine() will return "x86_64", and the test 
will be run, but fail:
autopkgtest [09:22:26]: test command7: python debian/tests/encode-decode.py 
isa_l_rs_vand
autopkgtest [09:22:26]: test command7: [-----------------------
Traceback (most recent call last):
  File "debian/tests/encode-decode.py", line 15, in <module>
    ec = ECDriver(k=3, m=3, hd=3, ec_type=sys.argv[1])
  File "/usr/lib/python2.7/dist-packages/pyeclib/ec_iface.py", line 212, in 
__init__
    validate=int(self.validate)
  File "/usr/lib/python2.7/dist-packages/pyeclib/utils.py", line 73, in 
create_instance
    instance = object_class(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/pyeclib/core.py", line 61, in __init__
    validate)
pyeclib.ec_iface.ECBackendInstanceNotAvailable: pyeclib_c_init ERROR: Backend 
instance not found. Please inspect syslog for liberasurecode error report.
init: autopkgtest [09:22:26]: test command7: -----------------------]

It's probably best to use "dpkg --architecture" for this check.

** Affects: python-pyeclib (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: six (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: update-excuse

** Also affects: six (Ubuntu)
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to six in Ubuntu.
https://bugs.launchpad.net/bugs/1848237

Title:
  amd64-only test running on i386

Status in python-pyeclib package in Ubuntu:
  New
Status in six package in Ubuntu:
  New

Bug description:
  Some tests in d/t/control are not meant to be run on non-amd64 architectures. 
The test script tries to detect this and skip them:
  arch = platform.machine()
  if sys.argv[1].startswith('isa_') and arch == 'x86_64':
      print("Skipping {} test for {} architecture".format(sys.argv[1], arch))
  else:
  ...

  In eoan, at some point during the development cycle, the VM running i386 
tests is actually on an amd64 kernel:
  """
  ...
  -name adt-eoan-i386-python-pyeclib-20191014-091043 --image 
adt/ubuntu-eoan-i386-server
  ...
  Get:5 http://ftpmaster.internal/ubuntu eoan-proposed/universe Sources [127 kB]
  Get:6 http://ftpmaster.internal/ubuntu eoan-proposed/main amd64 Packages 
[18.0 kB]
  Get:7 http://ftpmaster.internal/ubuntu eoan-proposed/main i386 Packages [12.9 
kB]
  ...
  linux-generic:amd64 is already the newest version (5.3.0.18.21).
  ...
  utopkgtest [09:11:51]: testbed running kernel: Linux 5.3.0-18-generic 
#19-Ubuntu SMP Tue Oct 8 20:14:06 UTC 2019
  autopkgtest [09:11:51]: testbed dpkg architecture: i386
  """

  In such an environment, platform.machine() will return "x86_64", and the test 
will be run, but fail:
  autopkgtest [09:22:26]: test command7: python debian/tests/encode-decode.py 
isa_l_rs_vand
  autopkgtest [09:22:26]: test command7: [-----------------------
  Traceback (most recent call last):
    File "debian/tests/encode-decode.py", line 15, in <module>
      ec = ECDriver(k=3, m=3, hd=3, ec_type=sys.argv[1])
    File "/usr/lib/python2.7/dist-packages/pyeclib/ec_iface.py", line 212, in 
__init__
      validate=int(self.validate)
    File "/usr/lib/python2.7/dist-packages/pyeclib/utils.py", line 73, in 
create_instance
      instance = object_class(*args, **kwargs)
    File "/usr/lib/python2.7/dist-packages/pyeclib/core.py", line 61, in 
__init__
      validate)
  pyeclib.ec_iface.ECBackendInstanceNotAvailable: pyeclib_c_init ERROR: Backend 
instance not found. Please inspect syslog for liberasurecode error report.
  init: autopkgtest [09:22:26]: test command7: -----------------------]

  It's probably best to use "dpkg --architecture" for this check.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-pyeclib/+bug/1848237/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to