Bug#877813: reprotest: regression between 0.7.1 and 0.7.2

gregor herrmann gregoa at debian.org
Thu Oct 5 23:32:41 UTC 2017


On Thu, 05 Oct 2017 22:59:00 +0000, Ximin Luo wrote:

> gregor herrmann:
> > [..]
> > sudo: Î޷¨½âÎöÖ÷»ú£ºjadzia
> > tail: Î޷¨´ò¿ª'debian/changelog' ¶ÁȡÊý¾: ȨÏ޲»¹»
> > dpkg-buildpackage: erreur: fin de debian/changelog a produit une erreur de sortie de type 1
> > [..]
> > sudo: impossible de déterminer le nom de l'hôte jadzia
> > tail: no se puede abrir 'debian/changelog' para lectura: Permiso denegado
> > dpkg-buildpackage: error: tail of debian/changelog gave error exit status 1

> tail(1) apparently can't read debian/changelog. 

Yes, after manually installing fakeroot, which I didn't need to do
for reprotest <= 0.7.1.

And the error before "tail: can't open ..." (in Spanish) is still
"sudo: can't determine hostname ..." (in French).

I might be wrong, but this still sounds like a problem related to
sudo to me.

Full disclosure: I'm not running systems in the Ubuntu-style of "sudo
all all nopasswd everything <myuser>". And so far both autopkgtest
and reprotest (which are both using the same schroot chroot, and are
the only ones, as for building I'm using cowbuilder) just worked.

> I don't know how you set up your schroot, but reprotest is coded
> against the sbuild-createchroot stuff. Have you tried using that?

That's a good question :) And I'm not entirely sure since I did this
years ago and I only use the schroot chroot for autopkgtest and
reprotest; but I think it was sbuild-createchroot as well.
 
> What command line are you running to get these errors?

Another good question; I call reprotest from a wrapper script:

https://anonscm.debian.org/cgit/pkg-perl/packages/pkg-perl-tools.git/tree/examples/check-build#n86

Which, run under 'sh -x' looks like:

#v+
+ read -n 1 -p 'reprotest? y/N ' REPRO
reprotest? y/N y+ '[' y = y ']'
+ REPROTESTLOG=../build-area/openpgp-applet_1.0-2_amd64_reprotest.log
+ '[' -x /usr/bin/schroot ']'
+ schroot -l
+ grep -q default
+ REPROTEST_VIRT_SERVER=schroot
+ REPROTEST_VIRT_SERVER_ARGS=default
+ '[' -n schroot ']'
++ dpkg-query -f '${Version}\n' -W reprotest
+ REPROTESTVERSION=0.7.2
+ dpkg --compare-versions 0.7.2 ge 0.7
+ REPROTESTPARAMS='--variations=+all,-build_path,-user_group --verbosity 1 . '
+ env -u TMPDIR -- reprotest --variations=+all,-build_path,-user_group --verbosity 1 . -- schroot default
+ tee ../build-area/openpgp-applet_1.0-2_amd64_reprotest.log
preset auto-selected: ReprotestPreset(build_command='\n        if [ "$(id -u)" = 0 ]; then\n            sudo -E -u "$LOGNAME" sh -ec \'dpkg-buildpackage --no-sign -b\';\n        else\n            sh -ec \'dpkg-buildpackage --no-sign -b\';\n        fi\n        ', artifact_pattern='../*.deb', testbed_pre=None, testbed_init='apt-get -y --no-install-recommends install disorderfs faketime locales-all sudo util-linux;         test -c /dev/fuse || mknod -m 666 /dev/fuse c 10 229;         test -f /etc/mtab || ln -s ../proc/self/mounts /etc/mtab', testbed_build_pre='apt-get -y --no-install-recommends build-dep ./"."', source_pattern=None, diffoscope_args=[])
STARTING VIRTUAL SERVER ['/usr/lib/python3/dist-packages/reprotest/virt/autopkgtest-virt-schroot', 'default']
reprotest [01:25:00]: version @version@
reprotest [01:25:00]: host jadzia; command line: /usr/bin/reprotest --variations=+all,-build_path,-user_group --verbosity 1 . -- schroot default
reprotest [01:25:00]: testbed package architecture: amd64
reprotest [01:25:01]: testbed running kernel: Linux 4.12.0-2-amd64 #1 SMP Debian 4.12.13-1 (2017-09-19)
Reading package lists...
[.. first build ..]
executing: if ( mv /tmp/autopkgtest.eYrFOo/build-control/ /tmp/autopkgtest.eYrFOo/const_build_path && umask 0022 && export REPROTEST_BUILD_PATH=/tmp/autopkgtest.eYrFOo/const_build_path/ && export REPROTEST_UMASK=$(umask) && linux64 --uname-2.6 sh -ec 'cd "$REPROTEST_BUILD_PATH"; unset REPROTEST_BUILD_PATH; umask "$REPROTEST_UMASK"; unset REPROTEST_UMASK; 
        if [ "$(id -u)" = 0 ]; then
            sudo -E -u "$LOGNAME" sh -ec '"'"'dpkg-buildpackage --no-sign -b'"'"';
        else
            sh -ec '"'"'dpkg-buildpackage --no-sign -b'"'"';
        fi
        ' ); then
    ( __c=0; mv /tmp/autopkgtest.eYrFOo/const_build_path /tmp/autopkgtest.eYrFOo/build-control/ || __c=$?; exit $__c; );
else
    __x=$?;
    if ( __c=0; mv /tmp/autopkgtest.eYrFOo/const_build_path /tmp/autopkgtest.eYrFOo/build-control/ || __c=$?; exit $__c; ); then exit $__x; else
        echo >&2; "cleanup failed with exit code $?"; exit $__x;
    fi;
fi

sudo: unable to resolve host jadzia
dpkg-buildpackage: error: fakeroot not found, either install the fakeroot
package, specify a command with the -r option, or run this as root
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 720, in run
    return 0 if check_func(*check_args) else 1
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 332, in check
    local_dists = [proc.send(nv) for nv in zip(bnames, build_variations)]
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 332, in <listcomp>
    local_dists = [proc.send(nv) for nv in zip(bnames, build_variations)]
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 298, in corun_builds
    bctx.run_build(testbed, build, artifact_pattern, testbed_build_pre)
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 186, in run_build
    kind='build')
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 61, in check_exec2
    adtlog.AutopkgtestError)
  File "/usr/lib/python3/dist-packages/reprotest/lib/adt_testbed.py", line 370, in bomb
    raise _type(m)
reprotest.lib.adtlog.AutopkgtestError: "sh -ec if ( mv /tmp/autopkgtest.eYrFOo/build-control/ /tmp/autopkgtest.eYrFOo/const_build_path && umask 0022 && export REPROTEST_BUILD_PATH=/tmp/autopkgtest.eYrFOo/const_build_path/ && export REPROTEST_UMASK=$(umask) && linux64 --uname-2.6 sh -ec 'cd "$REPROTEST_BUILD_PATH"; unset REPROTEST_BUILD_PATH; umask "$REPROTEST_UMASK"; unset REPROTEST_UMASK; 
        if [ "$(id -u)" = 0 ]; then
            sudo -E -u "$LOGNAME" sh -ec '"'"'dpkg-buildpackage --no-sign -b'"'"';
        else
            sh -ec '"'"'dpkg-buildpackage --no-sign -b'"'"';
        fi
        ' ); then
    ( __c=0; mv /tmp/autopkgtest.eYrFOo/const_build_path /tmp/autopkgtest.eYrFOo/build-control/ || __c=$?; exit $__c; );
else
    __x=$?;
    if ( __c=0; mv /tmp/autopkgtest.eYrFOo/const_build_path /tmp/autopkgtest.eYrFOo/build-control/ || __c=$?; exit $__c; ); then exit $__x; else
        echo >&2; "cleanup failed with exit code $?"; exit $__x;
    fi;
fi
" failed with status 2
#v-


Cheers,
gregor


-- 
 .''`.  https://info.comodo.priv.at/ - Debian Developer https://www.debian.org
 : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D  85FA BB3A 6801 8649 AA06
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Blumfeld: Testament der Angst
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: Digital Signature
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20171006/d5ae24ec/attachment.sig>


More information about the Reproducible-builds mailing list