[Qa-jenkins-scm] Build failed in Jenkins: reproducible_diffoscope_from_git_branches #166

jenkins at jenkins.debian.net jenkins at jenkins.debian.net
Mon May 29 21:41:24 UTC 2017


See <https://jenkins.debian.net/job/reproducible_diffoscope_from_git_branches/166/display/redirect?page=changes>

Changes:

[infinity0] W T F

[infinity0] Add a --exclude-command CLI for filtering out long-running commands like

------------------------------------------
[...truncated 822.84 KB...]
tests/comparators/test_directory.py:102: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

filename = 'test_directory_symlink_diff'

    def get_data(filename):
>       with open(data(filename), encoding='utf-8') as f:
E       FileNotFoundError: [Errno 2] No such file or directory: '/tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/test_directory_symlink_diff'

filename   = 'test_directory_symlink_diff'

tests/utils/data.py:49: FileNotFoundError
___________________________ test_fallback_comparison ___________________________

feeder1 = <function make_feeder_from_command.<locals>.feeder at 0x7f4ab0910d90>
feeder2 = <function make_feeder_from_command.<locals>.feeder at 0x7f4ab0910ea0>

    def diff(feeder1, feeder2):
        tmpdir = get_temporary_directory().name
    
        fifo1_path = os.path.join(tmpdir, 'fifo1')
        fifo2_path = os.path.join(tmpdir, 'fifo2')
        with FIFOFeeder(feeder1, fifo1_path) as fifo1, \
             FIFOFeeder(feeder2, fifo2_path, early_eval=True) as fifo2:
>           return run_diff(fifo1_path, fifo2_path, fifo1.end_nl_q, fifo2.end_nl_q)

feeder1    = <function make_feeder_from_command.<locals>.feeder at 0x7f4ab0910d90>
feeder2    = <function make_feeder_from_command.<locals>.feeder at 0x7f4ab0910ea0>
fifo1      = <FIFOFeeder(Thread-2259, stopped daemon 139958800901888)>
fifo1_path = '/tmp/tmphey3gl69_diffoscope/fifo1'
fifo2      = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>
fifo2_path = '/tmp/tmphey3gl69_diffoscope/fifo2'
tmpdir     = '/tmp/tmphey3gl69_diffoscope'

diffoscope/diff.py:261: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>
exc_type = None, exc_value = None, exc_tb = None

    def __exit__(self, exc_type, exc_value, exc_tb):
>       self.join()

exc_tb     = None
exc_type   = None
exc_value  = None
self       = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>

diffoscope/diff.py:205: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>

    def join(self):
        self._want_join.set()
        super().join()
        if self._exception is not None:
>           raise self._exception

__class__  = <class 'diffoscope.diff.FIFOFeeder'>
self       = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>

diffoscope/diff.py:252: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>

    def run(self):
        try:
            # Try to open the FIFO nonblocking, so we can periodically check
            # if the main thread wants us to wind down.  If it does, there's no
            # more need for the FIFO, so stop the thread.
            while True:
                try:
                    fifo_fd = os.open(self.fifo_path, os.O_WRONLY | os.O_NONBLOCK)
                except OSError as error:
                    if error.errno != errno.ENXIO:
                        raise
                    elif self._want_join.is_set():
                        return
                else:
                    break
    
            # Now clear the fd's nonblocking flag to let writes block normally.
            fcntl.fcntl(fifo_fd, fcntl.F_SETFL, 0)
            with open(fifo_fd, 'wb') as fifo:
                # If early-eval is requested, run the feeder and store its output
                # in a temporary file, *before* writing to the "real" fifo. This is
                # necessary to force command-based diffs to run in parallel, see
                # Debian #863636
                feeder = self.feeder
                if self.early_eval:
                    temp_path = self.fifo_path + ".contents"
                    with open(temp_path, 'wb') as temp:
>                       end_nl = feeder(temp)

feeder     = <function make_feeder_from_command.<locals>.feeder at 0x7f4ab0910ea0>
fifo       = <_io.BufferedWriter name=15>
fifo_fd    = 15
self       = <FIFOFeeder(Thread-2260, stopped daemon 139958782162688)>
temp       = <_io.BufferedWriter name='/tmp/tmphey3gl69_diffoscope/fifo2.contents'>
temp_path  = '/tmp/tmphey3gl69_diffoscope/fifo2.contents'

diffoscope/diff.py:234: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

out_file = <_io.BufferedWriter name='/tmp/tmphey3gl69_diffoscope/fifo2.contents'>

    def feeder(out_file):
        with profile('command', command.cmdline()[0]):
            end_nl = make_feeder_from_raw_reader(command.stdout, command.filter)(out_file)
            if command.poll() is None:
                command.terminate()
            returncode = command.wait()
        if returncode not in (0, -signal.SIGTERM):
>           raise subprocess.CalledProcessError(returncode, command.cmdline(), output=command.stderr.getvalue())
E           subprocess.CalledProcessError: Command '['xxd', '/tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/test1.rpm']' returned non-zero exit status 2

command    = <diffoscope.comparators.utils.compare.Xxd object at 0x7f4ab08b2240>
end_nl     = False
out_file   = <_io.BufferedWriter name='/tmp/tmphey3gl69_diffoscope/fifo2.contents'>
returncode = 2

diffoscope/difference.py:237: CalledProcessError

During handling of the above exception, another exception occurred:

monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f4ab08b2390>

    @skip_unless_tools_exist('xxd')
    def test_fallback_comparison(monkeypatch):
        manager = ComparatorManager()
        monkeypatch.setattr(manager, 'COMPARATORS', (
            ('rpm_fallback.RpmFile',),
        ))
        manager.reload()
    
        # Re-specialize after reloading our Comparators
        rpm1 = specialize(FilesystemFile(data('test1.rpm')))
        rpm2 = specialize(FilesystemFile(data('test2.rpm')))
    
>       assert rpm1.compare(rpm1) is None

manager    = <diffoscope.comparators.ComparatorManager object at 0x7f4ab08b2748>
monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f4ab08b2390>
rpm1       = <<class 'diffoscope.comparators.binary.FilesystemFile'> /tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/test1.rpm>
rpm2       = <<class 'diffoscope.comparators.binary.FilesystemFile'> /tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/test2.rpm>

tests/comparators/test_rpm.py:91: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
diffoscope/comparators/utils/file.py:309: in compare
    return self.compare_bytes(other, source)
diffoscope/comparators/utils/file.py:205: in compare_bytes
    return compare_binary_files(self, other, source)
diffoscope/comparators/utils/compare.py:110: in compare_binary_files
    source=source, has_internal_linenos=True)
diffoscope/difference.py:157: in from_command
    difference = Difference.from_feeder(feeder1, feeder2, path1, path2, *args, **kwargs)
diffoscope/difference.py:100: in from_feeder
    unified_diff = diff(feeder1, feeder2)
diffoscope/diff.py:261: in diff
    return run_diff(fifo1_path, fifo2_path, fifo1.end_nl_q, fifo2.end_nl_q)
diffoscope/diff.py:205: in __exit__
    self.join()
diffoscope/diff.py:252: in join
    raise self._exception
diffoscope/diff.py:243: in run
    end_nl = feeder(fifo)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

out_file = <_io.BufferedWriter name=12>

    def feeder(out_file):
        with profile('command', command.cmdline()[0]):
            end_nl = make_feeder_from_raw_reader(command.stdout, command.filter)(out_file)
            if command.poll() is None:
                command.terminate()
            returncode = command.wait()
        if returncode not in (0, -signal.SIGTERM):
>           raise subprocess.CalledProcessError(returncode, command.cmdline(), output=command.stderr.getvalue())
E           subprocess.CalledProcessError: Command '['xxd', '/tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/test1.rpm']' returned non-zero exit status 2

command    = <diffoscope.comparators.utils.compare.Xxd object at 0x7f4ab08b20b8>
end_nl     = False
out_file   = <_io.BufferedWriter name=12>
returncode = 2

diffoscope/difference.py:237: CalledProcessError
_______________________________ test_destination _______________________________

tmpdir = local('/tmp/pytest-of-root/pytest-0/test_destination0')

    def test_destination(tmpdir):
        def create(x):
            path = os.path.join(str(tmpdir.mkdir(x)), 'src')
            os.symlink('/{}'.format(x), path)
            return specialize(FilesystemFile(path))
    
        a = create('a')
        b = create('b')
    
>       expected_diff = get_data('symlink_expected_destination_diff')

a          = <<class 'abc.Symlink'> /tmp/pytest-of-root/pytest-0/test_destination0/a/src>
b          = <<class 'abc.Symlink'> /tmp/pytest-of-root/pytest-0/test_destination0/b/src>
create     = <function test_destination.<locals>.create at 0x7f4ab0894400>
tmpdir     = local('/tmp/pytest-of-root/pytest-0/test_destination0')

tests/comparators/test_symlink.py:37: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

filename = 'symlink_expected_destination_diff'

    def get_data(filename):
>       with open(data(filename), encoding='utf-8') as f:
E       FileNotFoundError: [Errno 2] No such file or directory: '/tmp/testrun/.pybuild/pythonX.Y_3.5/build/tests/data/symlink_expected_destination_diff'

filename   = 'symlink_expected_destination_diff'

tests/utils/data.py:49: FileNotFoundError
========= 44 failed, 22 passed, 13 skipped, 266 error in 65.82 seconds =========
E: pybuild pybuild:283: test: plugin distutils failed with: exit code=1: cd /tmp/testrun/.pybuild/pythonX.Y_3.5/build; python3.5 -m pytest -vv -r sxX -l --cov=diffoscope --cov-report=term-missing --cov-report=html --junit-xml=/tmp/job-exports/test-results/tests.xml
dh_auto_test: pybuild --test --test-pytest -i python{version} -p 3.5 returned exit code 13
debian/rules:35: recipe for target 'build' failed
make: *** [build] Error 25
dpkg-buildpackage: error: debian/rules build gave error exit status 2
debuild: fatal error at line 1116:
dpkg-buildpackage -rfakeroot -us -uc failed
+ cleanup
+ '[' -e /chroots/chroot-run-sid.63nh1C3VL/tmp/testrun/stats.csv ']'
+ '[' true = true ']'
+ mkdir -p <https://jenkins.debian.net/job/reproducible_diffoscope_from_git_branches/ws/job-exports>
++ ls -1A /chroots/chroot-run-sid.63nh1C3VL//tmp/job-exports
+ '[' '!' -z test-results ']'
+ cp -drv /chroots/chroot-run-sid.63nh1C3VL//tmp/job-exports/test-results <https://jenkins.debian.net/job/reproducible_diffoscope_from_git_branches/ws/job-exports/>
‘/chroots/chroot-run-sid.63nh1C3VL//tmp/job-exports/test-results’ -> ‘<https://jenkins.debian.net/job/reproducible_diffoscope_from_git_branches/ws/job-exports/test-results%E2%80%99>
‘/chroots/chroot-run-sid.63nh1C3VL//tmp/job-exports/test-results/tests.xml’ -> ‘<https://jenkins.debian.net/job/reproducible_diffoscope_from_git_branches/ws/job-exports/test-results/tests.xml%E2%80%99>
++ ls -1 '/chroots/chroot-run-sid.63nh1C3VL/tmp/debian-edu-doc_*.changes'
++ true
+ CHANGES=
+ '[' '!' -z '' ']'
+ '[' false = true ']'
+ '[' -d /chroots/chroot-run-sid.63nh1C3VL/proc ']'
+ sudo umount -l /chroots/chroot-run-sid.63nh1C3VL/proc
+ '[' -d /chroots/chroot-run-sid.63nh1C3VL/testrun ']'
+ '[' -d /chroots/chroot-run-sid.63nh1C3VL ']'
+ sudo rm -rf --one-file-system /chroots/chroot-run-sid.63nh1C3VL
Mon 29 May 21:41:23 UTC 2017 - /srv/jenkins/bin/chroot-run.sh stopped running as /tmp/jenkins-script-8DKEH9UH, which will now be removed.
Build step 'Execute shell' marked build as failure



More information about the Qa-jenkins-scm mailing list