Bug#1068853: reprotest: SyntaxWarning: invalid escape sequence '\;'
Holger Levsen
holger at layer-acht.org
Fri Apr 12 18:54:09 BST 2024
On Fri, Apr 12, 2024 at 10:29:07AM -0700, Vagrant Cascadian wrote:
> How exactly did you get this error?
upgrading my sid schroot. just confirmed the bug by removing it there
and installing it again. then I mounted /proc but the bug is still
there. /dev is also populated, though /usr/bin/mount fails with
"mount: failed to read mtab: No such file or directory".
> I installed locally, but did not encounter any such issues on package
> installation just now, and also nothing when manually running a simple
> test:
>
> reprotest 'date > date' date
that also fails verbosely here:
$ schroot -- reprotest 'date > date' date
WARNING:reprotest:The control build runs on 1 CPU by default, give --min-cpus to increase this.
WARNING:reprotest.build:IGNORING user_group variation; supply more usergroups with --variations=user_group.available+=USER1:GROUP1;USER2:GROUP2 or alternatively, suppress this warning with --variations=-user_group
WARNING:reprotest.build:Not using sudo for domain_host; your build may fail. See man page for other options.
WARNING:reprotest.build:Be sure to `echo 1 > /proc/sys/kernel/unprivileged_userns_clone` if on a Debian system.
fusermount: failed to open /etc/mtab: No such file or directory
fusermount: mount failed: Operation not permitted
fusermount: failed to unmount /tmp/reprotest.AQkTKX/build-experiment-1: Operation not permitted
cleanup failed with exit code 1
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 862, in run
return 0 if check_func(*check_args) else 1
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 379, in check
local_dists += [proc.send(nv) for nv in zip(bnames[1:], build_variations[1:])]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 379, in <listcomp>
local_dists += [proc.send(nv) for nv in zip(bnames[1:], build_variations[1:])]
^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 339, in corun_builds
bctx.run_build(testbed, build, os.environ, artifact_pattern, testbed_build_pre, no_clean_on_error)
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 218, in run_build
testbed.check_exec2(build_argv,
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 63, in check_exec2
self.bomb('"%s" failed with status %i' % (' '.join(argv), code),
File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 70, in bomb
raise _type(m)
reprotest.lib.adtlog.AutopkgtestError: "sh -ec run_build() {
mkdir -p /tmp/reprotest.AQkTKX/build-experiment-1-aux && \
SETARCH_ARCH=$(for a in $(setarch --list); do setarch $a true && echo $a || true; done) && \
DROP_ARCH="-v -e ^$(uname -m)\$" && \
WORDSIZE=64 && \
if [ $WORDSIZE -eq 64 ]; then for _ARCH_TO_DROP in armh armv7b armv7l armv8b armv8l arm athlon i386 i486 i586 i686 linux32 mips32 mips parisc32 parisc ppc32le ppc32 ppcle ppc s390 sparc32bash sparc32 sparc; do DROP_ARCH="$DROP_ARCH -e ^$_ARCH_TO_DROP\$"; done; fi && \
SETARCH_ARCH=$(echo "$SETARCH_ARCH" | grep $DROP_ARCH | shuf -n1) && \
KERNEL_VERSION=$(uname -r) && \
if [ ${KERNEL_VERSION#2.6} = $KERNEL_VERSION ]; then SETARCH_OPTS=--uname-2.6; fi && \
CPU_MAX=$(nproc) && \
CPU_MIN=$({ echo $CPU_MAX; echo 1; } | sort -n | head -n1) && \
CPU_NUM=$(if [ $CPU_MIN = $CPU_MAX ]; then echo $CPU_MIN; echo >&2 "only 1 CPU is available; num_cpus is ineffective"; else shuf -i$((CPU_MIN + 1))-$CPU_MAX -n1; fi) && \
export CPU_LIST="$(echo $(shuf -i0-$((CPU_MAX - 1)) -n$CPU_NUM) | tr ' ' ,)" && \
mv /tmp/reprotest.AQkTKX/build-experiment-1/ /tmp/reprotest.AQkTKX/build-experiment-1-before-disorderfs/ && \
mkdir -p /tmp/reprotest.AQkTKX/build-experiment-1/ && \
disorderfs -q --shuffle-dirents=yes /tmp/reprotest.AQkTKX/build-experiment-1-before-disorderfs/ /tmp/reprotest.AQkTKX/build-experiment-1/ && \
umask 0002 && \
export REPROTEST_BUILD_PATH=/tmp/reprotest.AQkTKX/build-experiment-1/ && \
export REPROTEST_UMASK=$(umask) && \
unshare -r --uts sh -ec '
hostname reprotest-capture-hostname
domainname "reprotest-capture-domainname"
"$@"' - \
faketime +398days+2hours+27minutes \
taskset -a -c $CPU_LIST \
setarch $SETARCH_ARCH $SETARCH_OPTS \
sh -ec 'cd "$REPROTEST_BUILD_PATH"; unset REPROTEST_BUILD_PATH; umask "$REPROTEST_UMASK"; unset REPROTEST_UMASK; date > date'
}
cleanup() {
__c=0; \
export PATH="/tmp/reprotest.AQkTKX/bin:$PATH" || __c=$?; \
fusermount -u /tmp/reprotest.AQkTKX/build-experiment-1/ || __c=$?; \
rmdir /tmp/reprotest.AQkTKX/build-experiment-1/ || __c=$?; \
mv /tmp/reprotest.AQkTKX/build-experiment-1-before-disorderfs/ /tmp/reprotest.AQkTKX/build-experiment-1/ || __c=$?; \
rm -rf /tmp/reprotest.AQkTKX/build-experiment-1-aux || __c=$?; \
exit $__c
}
trap '( cleanup )' HUP INT QUIT ABRT TERM PIPE # FIXME doesn't quite work reliably yet
if ( run_build ); then ( cleanup ); else
__x=$?; # save the exit code of run_build
if ( ! false ); then
if ( cleanup ); then :; else echo >&2 "cleanup failed with exit code $?"; fi;
fi
exit $__x
fi" failed with status 1
while not in schroot it works nicely:
$ reprotest 'date > date' date
WARNING:reprotest:The control build runs on 1 CPU by default, give --min-cpus to increase this.
WARNING:reprotest.build:IGNORING user_group variation; supply more usergroups with --variations=user_group.available+=USER1:GROUP1;USER2:GROUP2 or alternatively, suppress this warning with --variations=-user_group
WARNING:reprotest.build:Not using sudo for domain_host; your build may fail. See man page for other options.
WARNING:reprotest.build:Be sure to `echo 1 > /proc/sys/kernel/unprivileged_userns_clone` if on a Debian system.
--- /tmp/tmptqlh18ic/control
+++ /tmp/tmptqlh18ic/experiment-1
│ --- /tmp/tmptqlh18ic/control/source-root
├── +++ /tmp/tmptqlh18ic/experiment-1/source-root
│ │ --- /tmp/tmptqlh18ic/control/source-root/date
│ ├── +++ /tmp/tmptqlh18ic/experiment-1/source-root/date
│ │ @@ -1 +1 @@
│ │ +P 24 nov 2024 17:10:37 GMT
│ │ -Fri Apr 12 05:52:37 GMT 2024
--
cheers,
Holger
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ holger@(debian|reproducible-builds|layer-acht).org
⢿⡄⠘⠷⠚⠋⠀ OpenPGP: B8BF54137B09D35CF026FE9D 091AB856069AAA1C
⠈⠳⣄
Bottled water companies don't produce water, they produce plastic bottles.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/reproducible-builds/attachments/20240412/f8f70be2/attachment.sig>
More information about the Reproducible-builds
mailing list