Diff of the two buildlogs: -- --- b1/build.log 2024-09-27 10:52:22.313019571 +0000 +++ b2/build.log 2024-09-27 10:54:44.194987843 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Sep 26 22:49:18 -12 2024 -I: pbuilder-time-stamp: 1727434158 +I: Current time: Fri Oct 31 07:15:27 +14 2025 +I: pbuilder-time-stamp: 1761844527 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -26,54 +26,86 @@ dpkg-source: info: unpacking python-ironic-lib_6.2.0-2.debian.tar.xz I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/33709/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/D01_modify_environment starting +debug: Running on ionos6-i386. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Oct 30 17:15 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=11 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=21 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='061cd9c78a354dbb8ac2a20caaff61ae' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='33709' - PS1='# ' - PS2='> ' + INVOCATION_ID=03aee054b6c14d09a4085d42ec018a95 + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=23088 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.HUv5BfED/pbuilderrc_fF0J --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.HUv5BfED/b1 --logfile b1/build.log python-ironic-lib_6.2.0-2.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.HUv5BfED/pbuilderrc_4BdN --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.HUv5BfED/b2 --logfile b2/build.log python-ironic-lib_6.2.0-2.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos12-i386 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/33709/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -376,7 +408,7 @@ Get: 225 http://deb.debian.org/debian trixie/main i386 python3-oslotest all 1:5.0.0-2 [17.1 kB] Get: 226 http://deb.debian.org/debian trixie/main i386 python3-pygments all 2.18.0+dfsg-1 [836 kB] Get: 227 http://deb.debian.org/debian trixie/main i386 python3-zeroconf all 0.134.0-1 [89.6 kB] -Fetched 60.7 MB in 2s (26.7 MB/s) +Fetched 60.7 MB in 2s (35.8 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.12-minimal:i386. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19770 files and directories currently installed.) @@ -1107,8 +1139,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri Sep 27 10:50:35 UTC 2024. -Universal Time is now: Fri Sep 27 10:50:35 UTC 2024. +Local time is now: Thu Oct 30 17:16:07 UTC 2025. +Universal Time is now: Thu Oct 30 17:16:07 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up libpgm-5.3-0t64:i386 (5.3.128~dfsg-2.1) ... @@ -1331,7 +1363,11 @@ fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/python-ironic-lib-6.2.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../python-ironic-lib_6.2.0-2_source.changes +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/python-ironic-lib-6.2.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../python-ironic-lib_6.2.0-2_source.changes dpkg-buildpackage: info: source package python-ironic-lib dpkg-buildpackage: info: source version 6.2.0-2 dpkg-buildpackage: info: source distribution unstable @@ -1389,21 +1425,26 @@ py3versions: no X-Python3-Version in control file, using supported versions pkgos-dh_auto_install --no-py2 --in-tmp + PKGOS_IN_TMP=no -+ echo WARNING: --no-py2 is deprecated and always on. ++ for i in $@ ++ case "${1}" in ++ echo 'WARNING: --no-py2 is deprecated and always on.' WARNING: --no-py2 is deprecated and always on. + shift ++ for i in $@ ++ case "${1}" in + PKGOS_IN_TMP=yes + shift -+ dpkg-parsechangelog -SSource +++ dpkg-parsechangelog -SSource + SRC_PKG_NAME=python-ironic-lib -+ echo python-ironic-lib -+ sed s/python-// +++ echo python-ironic-lib +++ sed s/python-// + PY_MODULE_NAME=ironic-lib -+ py3versions -vr +++ py3versions -vr + PYTHON3S=3.12 -+ [ yes = yes ] ++ '[' yes = yes ']' + TARGET_DIR=tmp -+ pwd ++ for pyvers in ${PYTHON3S} +++ pwd + python3.12 setup.py install --install-layout=deb --root /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp /usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !! @@ -1451,47 +1492,47 @@ creating build creating build/lib creating build/lib/ironic_lib -copying ironic_lib/metrics_collector.py -> build/lib/ironic_lib -copying ironic_lib/metrics_utils.py -> build/lib/ironic_lib -copying ironic_lib/keystone.py -> build/lib/ironic_lib -copying ironic_lib/capabilities.py -> build/lib/ironic_lib -copying ironic_lib/wsgi.py -> build/lib/ironic_lib -copying ironic_lib/exception.py -> build/lib/ironic_lib -copying ironic_lib/disk_partitioner.py -> build/lib/ironic_lib -copying ironic_lib/auth_basic.py -> build/lib/ironic_lib -copying ironic_lib/__init__.py -> build/lib/ironic_lib -copying ironic_lib/metrics.py -> build/lib/ironic_lib -copying ironic_lib/metrics_statsd.py -> build/lib/ironic_lib -copying ironic_lib/utils.py -> build/lib/ironic_lib -copying ironic_lib/qemu_img.py -> build/lib/ironic_lib -copying ironic_lib/mdns.py -> build/lib/ironic_lib -copying ironic_lib/disk_utils.py -> build/lib/ironic_lib -creating build/lib/ironic_lib/json_rpc -copying ironic_lib/json_rpc/client.py -> build/lib/ironic_lib/json_rpc -copying ironic_lib/json_rpc/__init__.py -> build/lib/ironic_lib/json_rpc -copying ironic_lib/json_rpc/server.py -> build/lib/ironic_lib/json_rpc creating build/lib/ironic_lib/common -copying ironic_lib/common/config.py -> build/lib/ironic_lib/common copying ironic_lib/common/i18n.py -> build/lib/ironic_lib/common +copying ironic_lib/common/config.py -> build/lib/ironic_lib/common copying ironic_lib/common/__init__.py -> build/lib/ironic_lib/common creating build/lib/ironic_lib/tests -copying ironic_lib/tests/test_exception.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_disk_partitioner.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_keystone.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_qemu_img.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_exception.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_base.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_basic_auth.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_disk_utils.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_keystone.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_utils.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_disk_partitioner.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_capabilities.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_metrics.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_utils.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/__init__.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/base.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_mdns.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_metrics_statsd.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_disk_utils.py -> build/lib/ironic_lib/tests -copying ironic_lib/tests/test_json_rpc.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_metrics_utils.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_mdns.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/base.py -> build/lib/ironic_lib/tests copying ironic_lib/tests/test_metrics_collector.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_json_rpc.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_basic_auth.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/test_metrics_statsd.py -> build/lib/ironic_lib/tests +copying ironic_lib/tests/__init__.py -> build/lib/ironic_lib/tests +creating build/lib/ironic_lib/json_rpc +copying ironic_lib/json_rpc/client.py -> build/lib/ironic_lib/json_rpc +copying ironic_lib/json_rpc/server.py -> build/lib/ironic_lib/json_rpc +copying ironic_lib/json_rpc/__init__.py -> build/lib/ironic_lib/json_rpc +copying ironic_lib/mdns.py -> build/lib/ironic_lib +copying ironic_lib/metrics_statsd.py -> build/lib/ironic_lib +copying ironic_lib/exception.py -> build/lib/ironic_lib +copying ironic_lib/utils.py -> build/lib/ironic_lib +copying ironic_lib/metrics_utils.py -> build/lib/ironic_lib +copying ironic_lib/keystone.py -> build/lib/ironic_lib +copying ironic_lib/qemu_img.py -> build/lib/ironic_lib +copying ironic_lib/wsgi.py -> build/lib/ironic_lib +copying ironic_lib/capabilities.py -> build/lib/ironic_lib +copying ironic_lib/metrics.py -> build/lib/ironic_lib +copying ironic_lib/disk_utils.py -> build/lib/ironic_lib +copying ironic_lib/disk_partitioner.py -> build/lib/ironic_lib +copying ironic_lib/__init__.py -> build/lib/ironic_lib +copying ironic_lib/auth_basic.py -> build/lib/ironic_lib +copying ironic_lib/metrics_collector.py -> build/lib/ironic_lib running egg_info creating ironic_lib.egg-info writing ironic_lib.egg-info/PKG-INFO @@ -1521,85 +1562,85 @@ creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3 creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/metrics_collector.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/mdns.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/metrics_statsd.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/exception.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc +copying build/lib/ironic_lib/json_rpc/client.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc +copying build/lib/ironic_lib/json_rpc/server.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc +copying build/lib/ironic_lib/json_rpc/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc +copying build/lib/ironic_lib/metrics_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common -copying build/lib/ironic_lib/common/config.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common copying build/lib/ironic_lib/common/i18n.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common +copying build/lib/ironic_lib/common/config.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common copying build/lib/ironic_lib/common/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common -copying build/lib/ironic_lib/metrics_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/keystone.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/qemu_img.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/wsgi.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/capabilities.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/metrics.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_exception.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_disk_partitioner.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_keystone.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_qemu_img.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_exception.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_base.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_basic_auth.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_disk_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_keystone.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_disk_partitioner.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_capabilities.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_metrics.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/base.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_mdns.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_metrics_statsd.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_disk_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/tests/test_json_rpc.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_metrics_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_mdns.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/base.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests copying build/lib/ironic_lib/tests/test_metrics_collector.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests -copying build/lib/ironic_lib/keystone.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/capabilities.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/wsgi.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/exception.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/tests/test_json_rpc.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_basic_auth.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/test_metrics_statsd.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/tests/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests +copying build/lib/ironic_lib/disk_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib copying build/lib/ironic_lib/disk_partitioner.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/auth_basic.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib copying build/lib/ironic_lib/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/metrics.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/metrics_statsd.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc -copying build/lib/ironic_lib/json_rpc/client.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc -copying build/lib/ironic_lib/json_rpc/__init__.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc -copying build/lib/ironic_lib/json_rpc/server.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc -copying build/lib/ironic_lib/qemu_img.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/mdns.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -copying build/lib/ironic_lib/disk_utils.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_collector.py to metrics_collector.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common/config.py to config.cpython-312.pyc +copying build/lib/ironic_lib/auth_basic.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +copying build/lib/ironic_lib/metrics_collector.py -> /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/mdns.py to mdns.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_statsd.py to metrics_statsd.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/exception.py to exception.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/utils.py to utils.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/client.py to client.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/server.py to server.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_utils.py to metrics_utils.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common/i18n.py to i18n.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common/config.py to config.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/common/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_utils.py to metrics_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_exception.py to test_exception.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_disk_partitioner.py to test_disk_partitioner.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_keystone.py to test_keystone.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/keystone.py to keystone.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/qemu_img.py to qemu_img.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/wsgi.py to wsgi.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/capabilities.py to capabilities.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics.py to metrics.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_qemu_img.py to test_qemu_img.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_exception.py to test_exception.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_base.py to test_base.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_basic_auth.py to test_basic_auth.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_disk_utils.py to test_disk_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_keystone.py to test_keystone.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_utils.py to test_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_disk_partitioner.py to test_disk_partitioner.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_capabilities.py to test_capabilities.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_metrics.py to test_metrics.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_utils.py to test_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/base.py to base.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_mdns.py to test_mdns.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_metrics_statsd.py to test_metrics_statsd.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_disk_utils.py to test_disk_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_json_rpc.py to test_json_rpc.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_metrics_utils.py to test_metrics_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_mdns.py to test_mdns.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/base.py to base.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_metrics_collector.py to test_metrics_collector.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/keystone.py to keystone.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/capabilities.py to capabilities.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/wsgi.py to wsgi.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/exception.py to exception.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_json_rpc.py to test_json_rpc.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_basic_auth.py to test_basic_auth.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/test_metrics_statsd.py to test_metrics_statsd.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/tests/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/disk_utils.py to disk_utils.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/disk_partitioner.py to disk_partitioner.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/auth_basic.py to auth_basic.cpython-312.pyc byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics.py to metrics.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_statsd.py to metrics_statsd.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/utils.py to utils.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/client.py to client.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/json_rpc/server.py to server.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/qemu_img.py to qemu_img.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/mdns.py to mdns.cpython-312.pyc -byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/disk_utils.py to disk_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/auth_basic.py to auth_basic.cpython-312.pyc +byte-compiling /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib/metrics_collector.py to metrics_collector.cpython-312.pyc running install_data creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/etc creating /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/etc/ironic @@ -1609,10 +1650,10 @@ Copying ironic_lib.egg-info to /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages/ironic_lib-6.2.0.egg-info Skipping SOURCES.txt running install_scripts -+ pwd -+ rm -rf /build/reproducible-path/python-ironic-lib-6.2.0/debian/python*/usr/lib/python*/dist-packages/*.pth -+ pwd -+ rm -rf /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python*/dist-packages/*.pth +++ pwd ++ rm -rf '/build/reproducible-path/python-ironic-lib-6.2.0/debian/python*/usr/lib/python*/dist-packages/*.pth' +++ pwd ++ rm -rf '/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python*/dist-packages/*.pth' pkgos-dh_auto_test --no-py2 'ironic_lib\.tests\.(?!(.*test_json_rpc\.TestService\.test_authenticated.*))' + PKGOS_TEST_PARALLEL=yes + PKGOS_TEST_SERIAL=no @@ -1620,700 +1661,707 @@ + PYTHON3S=disabled + TEST_PARALLEL_OPT=--parallel + TEST_SERIAL_OPT= -+ echo WARNING: --no-py2 is deprecated, and always on. ++ for i in $@ ++ case "${1}" in ++ echo 'WARNING: --no-py2 is deprecated, and always on.' WARNING: --no-py2 is deprecated, and always on. + shift -+ py3versions -vr ++ for i in $@ ++ case "${1}" in +++ py3versions -vr + PYTHON3S=3.12 -+ [ yes = no ] -+ [ no = yes ] -+ [ 3.12 = disabled ] -+ echo 3.12 -+ cut -d. -f1 ++ '[' yes = no ']' ++ '[' no = yes ']' ++ for pyvers in ${PYTHON3S} ++ '[' 3.12 = disabled ']' +++ echo 3.12 +++ cut -d. -f1 + PYMAJOR=3 -+ echo ===> Testing with python (python3) ++ echo '===> Testing with python (python3)' ===> Testing with python (python3) -+ pwd -+ [ -d /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages ] -+ [ -z ] -+ pwd -+ echo Implicitly adding PYTHONPATH=/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages +++ pwd ++ '[' -d /build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages ']' ++ '[' -z '' ']' +++ pwd ++ echo 'Implicitly adding PYTHONPATH=/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages' Implicitly adding PYTHONPATH=/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages -+ pwd +++ pwd + export PYTHONPATH=/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages -+ [ -e .stestr.conf ] -+ [ -x /usr/bin/python3-stestr ] ++ PYTHONPATH=/build/reproducible-path/python-ironic-lib-6.2.0/debian/tmp/usr/lib/python3/dist-packages ++ '[' -e .stestr.conf ']' ++ '[' -x /usr/bin/python3-stestr ']' + STESTR=stestr + rm -rf .stestr -+ + subunit2pyunitPYTHON=python3.12 stestr run --parallel --subunit ironic_lib\.tests\.(?!(.*test_json_rpc\.TestService\.test_authenticated.*)) - -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok -ironic_lib.tests.test_disk_utils.GetDeviceBlockSizeTestCase.test_get_dev_block_size -ironic_lib.tests.test_disk_utils.GetDeviceBlockSizeTestCase.test_get_dev_block_size ... ok -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok ++ PYTHON=python3.12 ++ stestr run --parallel --subunit 'ironic_lib\.tests\.(?!(.*test_json_rpc\.TestService\.test_authenticated.*))' ++ subunit2pyunit + ERROR [ironic_lib.json_rpc.client] Unexpected error from RPC: {'code': 500, 'message': 'AttributeError', 'data': {'class': 'AttributeError'}} +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_foreign_class +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_foreign_class ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_version_and_cap +ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_version_and_cap ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv4_success +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv4_success ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success_rfc2732 +ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success_rfc2732 ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_success +ironic_lib.tests.test_json_rpc.TestClient.test_call_success ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version +ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version ... ok +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version_and_cap +ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version_and_cap ... ok + ERROR [ironic_lib.json_rpc.client] Unexpected error from RPC: {'code': 500, 'message': 'AttributeError'} +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_unexpected_failure +ironic_lib.tests.test_json_rpc.TestClient.test_call_unexpected_failure ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_call_with_ssl +ironic_lib.tests.test_json_rpc.TestClient.test_call_with_ssl ... ok +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_can_send_version +ironic_lib.tests.test_json_rpc.TestClient.test_can_send_version ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_cast_failure +ironic_lib.tests.test_json_rpc.TestClient.test_cast_failure ... ok +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_cast_success +ironic_lib.tests.test_json_rpc.TestClient.test_cast_success ... ok +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once +ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_cast_success_with_version +ironic_lib.tests.test_json_rpc.TestClient.test_cast_success_with_version ... ok +ironic_lib.tests.test_json_rpc.TestClient.test_mask_secrets +ironic_lib.tests.test_json_rpc.TestClient.test_mask_secrets ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_all +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_all ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_name +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_name ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_none +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_none ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_empty_device_attribute +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_empty_device_attribute ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints ... ok + WARNING [ironic_lib.utils] The attribute "rotational" (with value "None") of device "/dev/sda" is not a valid Boolean. Skipping device. +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints2 +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints2 ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints3 +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints3 ... ok + WARNING [ironic_lib.utils] No device found that matches the root device hints {'size': '>=50', 'model': 's==foo'} +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_device_found +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_device_found ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_operators +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_operators ... ok + WARNING [ironic_lib.utils] The attribute "rotational" (with value "None") of device "/dev/sda" is not a valid Boolean. Skipping device. +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_one_hint +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_one_hint ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational ... ok +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational_convert_devices_bool +ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational_convert_devices_bool ... ok +ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts +ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts ... ok +ironic_lib.tests.test_keystone.AuthConfTestCase.test_os_service_types_alias +ironic_lib.tests.test_keystone.AuthConfTestCase.test_os_service_types_alias ... ok ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_correct ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_correct ... ok -ironic_lib.tests.test_base.BlockExecuteTestCase.test_can_mock_execute -ironic_lib.tests.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_empty -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image_with_convert -ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image_with_convert ... ok ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ... ok -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_fields -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok -ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute -ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_incorrect ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_incorrect ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_dict -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_dict ... ok -ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute_parent_mocked -ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute_parent_mocked ... ok -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_normal -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ironic_lib.tests.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ... ok -ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_non_uefi_bootable_image -ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_non_uefi_bootable_image ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_json_string -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_json_string ... ok -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_probe -ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_probe ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok +ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_mount +ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_mount ... ok + WARNING [ironic_lib.utils] Unable to unmount temporary location /mnt/fake: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_unmount +ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_unmount ... ok +ironic_lib.tests.test_utils.MountedTestCase.test_temporary +ironic_lib.tests.test_utils.MountedTestCase.test_temporary ... ok +ironic_lib.tests.test_utils.MountedTestCase.test_with_dest +ironic_lib.tests.test_utils.MountedTestCase.test_with_dest ... ok +ironic_lib.tests.test_utils.MountedTestCase.test_with_opts +ironic_lib.tests.test_utils.MountedTestCase.test_with_opts ... ok +ironic_lib.tests.test_utils.MountedTestCase.test_with_type +ironic_lib.tests.test_utils.MountedTestCase.test_with_type ... ok +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config ... ok +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth ... ok + ERROR [ironic_lib.keystone] Failed to load auth plugin from group test_group +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth_fail +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth_fail ... ok +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_service_auth +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_service_auth ... ok +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_session +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_session ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok + WARNING [ironic_lib.utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'fake' + WARNING [ironic_lib.utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'fake' +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser +ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_block_uuid ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_block_uuid ... ok -ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_uefi_bootable_image -ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_uefi_bootable_image ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format WARNING [ironic_lib.capabilities] Ignoring malformed capability 'badformat'. Format should be 'key:val'. - ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ... ok -ironic_lib.tests.test_metrics.TestMetricReflection.test_counter_reflection -ironic_lib.tests.test_metrics.TestMetricReflection.test_counter_reflection ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_skip_malformed -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_skip_malformed ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ... ok -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok -ironic_lib.tests.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute -ironic_lib.tests.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok -ironic_lib.tests.test_metrics.TestMetricReflection.test_gauge_reflection -ironic_lib.tests.test_metrics.TestMetricReflection.test_gauge_reflection ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_with_malformed -ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_with_malformed ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_flags -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ... ok -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force -ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok -ironic_lib.tests.test_metrics.TestMetricReflection.test_timer_reflection -ironic_lib.tests.test_metrics.TestMetricReflection.test_timer_reflection ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_no_old_format -ironic_lib.tests.test_capabilities.ParseTestCase.test_no_old_format ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ... ok -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_backend -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_backend ... ok -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once -ironic_lib.tests.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_none -ironic_lib.tests.test_capabilities.ParseTestCase.test_none ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_get_image_mb ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_get_image_mb ... ok ERROR [ironic_lib.disk_utils] Unable to stat device /dev/disk/by-path/ip-1.2.3.4:5678-iscsi-iqn.fake-lun-9 after attempting to verify 2 times. -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ... ok - WARNING [ironic_lib.disk_utils] Unable to get partition table type for device hello -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok -ironic_lib.tests.test_json_rpc.TestSession.test_http_basic -ironic_lib.tests.test_json_rpc.TestSession.test_http_basic ... ok -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_prefix -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_prefix ... ok -ironic_lib.tests.test_capabilities.ParseTestCase.test_unexpected_type -ironic_lib.tests.test_capabilities.ParseTestCase.test_unexpected_type ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok - ERROR [ironic_lib.disk_utils] Unable to stat device /dev/disk/by-path/ip-1.2.3.4:5678-iscsi-iqn.fake-lun-9 after attempting to verify 3 times. ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ... ok -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ... ok -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown -ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_nonexisting_backend -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_nonexisting_backend ... ok + ERROR [ironic_lib.disk_utils] Unable to stat device /dev/disk/by-path/ip-1.2.3.4:5678-iscsi-iqn.fake-lun-9 after attempting to verify 3 times. ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_indexerror -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_indexerror ... ok -ironic_lib.tests.test_json_rpc.TestSession.test_http_basic_deprecated -ironic_lib.tests.test_json_rpc.TestSession.test_http_basic_deprecated ... ok -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails -ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ... ok - ERROR [ironic_lib.json_rpc.client] Unexpected error from RPC: {'code': 500, 'message': 'AttributeError', 'data': {'class': 'AttributeError'}} -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure ... ok -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_list_prefix -ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_list_prefix ... ok ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ironic_lib.tests.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ... ok -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv4 -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv4 ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok -ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink -ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink ... ok - WARNING [ironic_lib.utils] Failed to unlink /fake/path, error: 2 -ironic_lib.tests.test_json_rpc.TestSession.test_keystone -ironic_lib.tests.test_json_rpc.TestSession.test_keystone ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_foreign_class -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_foreign_class ... ok +ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_empty +ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_empty ... ok +ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_parse +ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_parse ... ok +ironic_lib.tests.test_base.BlockExecuteTestCase.test_can_mock_execute +ironic_lib.tests.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok +ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute +ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok +ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute_parent_mocked +ironic_lib.tests.test_base.BlockExecuteTestCase.test_exception_raised_for_execute_parent_mocked ... ok +ironic_lib.tests.test_utils.IsHttpUrlTestCase.test_is_http_url +ironic_lib.tests.test_utils.IsHttpUrlTestCase.test_is_http_url ... ok +ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg +ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg ... ok +ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg_reraise +ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg_reraise ... ok +ironic_lib.tests.test_exception.TestIronicException.test___init___json_serializable +ironic_lib.tests.test_exception.TestIronicException.test___init___json_serializable ... ok +ironic_lib.tests.test_exception.TestIronicException.test___init___string_serializable +ironic_lib.tests.test_exception.TestIronicException.test___init___string_serializable ... ok +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_backend +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_backend ... ok +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_prefix +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_default_prefix ... ok +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_nonexisting_backend +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_nonexisting_backend ... ok +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_list_prefix +ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_list_prefix ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_prefix ironic_lib.tests.test_metrics_utils.TestGetLogger.test_numeric_prefix ... ok -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok - WARNING [ironic_lib.disk_utils] Failed to verify partition tables on device /dev/fake: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... ok -ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink_ENOENT -ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink_ENOENT ... ok -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6 -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6 ... ok -ironic_lib.tests.test_json_rpc.TestSession.test_noauth -ironic_lib.tests.test_json_rpc.TestSession.test_noauth ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_version_and_cap -ironic_lib.tests.test_json_rpc.TestClient.test_call_failure_with_version_and_cap ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_global_prefix_host_backend ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_global_prefix_host_backend ... ok -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_fails -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_counter -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_counter ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv4_success -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv4_success ... ok -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger -ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_host_backend ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_host_backend ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal_allowed -ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal_allowed ... ok -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device -ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_gauge -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_gauge ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_host_reverse_backend ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_host_reverse_backend ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test__append_operator_to_hints -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test__append_operator_to_hints ... ok -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_counter -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_counter ... ok -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_init -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_init ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_other_delim ironic_lib.tests.test_metrics_utils.TestGetLogger.test_prepend_other_delim ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success_rfc2732 -ironic_lib.tests.test_json_rpc.TestClient.test_call_ipv6_success_rfc2732 ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_empty_value -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_empty_value ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_gauge -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_gauge ... ok ironic_lib.tests.test_metrics_utils.TestGetLogger.test_statsd_backend ironic_lib.tests.test_metrics_utils.TestGetLogger.test_statsd_backend ... ok -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_open_socket -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_open_socket ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_success -ironic_lib.tests.test_json_rpc.TestClient.test_call_success ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_integer -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_integer ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_send -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_send ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version -ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version ... ok -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_send -ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_send ... ok + WARNING [ironic_lib.disk_utils] Failed to verify partition tables on device /dev/fake: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_lib.capabilities] Ignoring malformed capability 'badformat'. Format should be 'key:val'. + WARNING [ironic_lib.disk_utils] Unable to get partition table type for device hello ironic_lib.tests.test_capabilities.CombineTestCase.test_combine ironic_lib.tests.test_capabilities.CombineTestCase.test_combine ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values ... ok -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_timer -ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_timer ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok - WARNING [ironic_lib.utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +ironic_lib.tests.test_capabilities.CombineTestCase.test_skip_none +ironic_lib.tests.test_capabilities.CombineTestCase.test_skip_none ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok +ironic_lib.tests.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute +ironic_lib.tests.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok + ERROR [ironic_lib.utils] Failed to create a file system in /my/block/dev. Error: Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: 'fake' - WARNING [ironic_lib.utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +Traceback (most recent call last): + File "/build/reproducible-path/python-ironic-lib-6.2.0/ironic_lib/utils.py", line 170, in mkfs + execute(*args, run_as_root=True, use_standard_locale=True) + File "", line 3, in do_not_call + File "/usr/lib/python3.12/unittest/mock.py", line 1137, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1141, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1196, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: 'fake' -ironic_lib.tests.test_capabilities.CombineTestCase.test_skip_none -ironic_lib.tests.test_capabilities.CombineTestCase.test_skip_none ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version_and_cap -ironic_lib.tests.test_json_rpc.TestClient.test_call_success_with_version_and_cap ... ok - ERROR [ironic_lib.json_rpc.client] Unexpected error from RPC: {'code': 500, 'message': 'AttributeError'} + ERROR [ironic_lib.utils] Failed to make file system. File system foo is not supported. +Traceback (most recent call last): + File "/build/reproducible-path/python-ironic-lib-6.2.0/ironic_lib/utils.py", line 170, in mkfs + execute(*args, run_as_root=True, use_standard_locale=True) + File "", line 3, in do_not_call + File "/usr/lib/python3.12/unittest/mock.py", line 1137, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1141, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1196, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'No such file or directory' +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_dict +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_dict ... ok +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_old_format +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_old_format ... ok +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_skip_none +ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_skip_none ... ok +ironic_lib.tests.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size +ironic_lib.tests.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok + WARNING [ironic_lib.utils] Failed to unlink /fake/path, error: 2 +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter_sample_rate +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter_sample_rate ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_timer +ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_timer ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok +ironic_lib.tests.test_json_rpc.TestSession.test_http_basic +ironic_lib.tests.test_json_rpc.TestSession.test_http_basic ... ok +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_indexerror +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_indexerror ... ok +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv4 +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv4 ... ok +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6 +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6 ... ok +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal ... ok +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal_allowed +ironic_lib.tests.test_utils.GetRouteSourceTestCase.test_get_route_source_ipv6_linklocal_allowed ... ok +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required +ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok +ironic_lib.tests.test_metrics.TestMetricReflection.test_counter_reflection +ironic_lib.tests.test_metrics.TestMetricReflection.test_counter_reflection ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter_sample_rate +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter_sample_rate ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_gauge +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_gauge ... ok +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image_with_convert +ironic_lib.tests.test_disk_utils.PopulateImageTestCase.test_populate_raw_image_with_convert ... ok +ironic_lib.tests.test_json_rpc.TestSession.test_http_basic_deprecated +ironic_lib.tests.test_json_rpc.TestSession.test_http_basic_deprecated ... ok +ironic_lib.tests.test_json_rpc.TestSession.test_keystone +ironic_lib.tests.test_json_rpc.TestSession.test_keystone ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_timer +ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_timer ... ok +ironic_lib.tests.test_metrics.TestMetricReflection.test_gauge_reflection +ironic_lib.tests.test_metrics.TestMetricReflection.test_gauge_reflection ... ok +ironic_lib.tests.test_metrics.TestMetricReflection.test_timer_reflection +ironic_lib.tests.test_metrics.TestMetricReflection.test_timer_reflection ... ok +ironic_lib.tests.test_disk_utils.GetDeviceBlockSizeTestCase.test_get_dev_block_size +ironic_lib.tests.test_disk_utils.GetDeviceBlockSizeTestCase.test_get_dev_block_size ... ok +ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist +ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist ... ok +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_empty +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_fields +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_normal +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_probe +ironic_lib.tests.test_disk_utils.GetDeviceInformationTestCase.test_probe ... ok +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_fails +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger +ironic_lib.tests.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs ... ok +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_label +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_label ... ok +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unexpected_error +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unexpected_error ... ok +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unsupported_fs +ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unsupported_fs ... ok +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_counter +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_counter ... ok +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_gauge +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_gauge ... ok +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_init +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_init ... ok +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_open_socket +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_open_socket ... ok +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_send +ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_send ... ok ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_timer ironic_lib.tests.test_metrics_statsd.TestStatsdMetricLogger.test_timer ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values_space -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values_space ... ok -ironic_lib.tests.test_utils.IsHttpUrlTestCase.test_is_http_url -ironic_lib.tests.test_utils.IsHttpUrlTestCase.test_is_http_url ... ok +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown +ironic_lib.tests.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_flags +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ... ok +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails +ironic_lib.tests.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_get_metric_name +ironic_lib.tests.test_metrics.TestMetricLogger.test_get_metric_name ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_init +ironic_lib.tests.test_metrics.TestMetricLogger.test_init ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_counter +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_counter ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_gauge +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_gauge ... ok +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_timer +ironic_lib.tests.test_metrics.TestMetricLogger.test_send_timer ... ok +ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_non_uefi_bootable_image +ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_non_uefi_bootable_image ... ok +ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_uefi_bootable_image +ironic_lib.tests.test_disk_utils.GetUEFIDiskIdentifierTestCase.test_get_uefi_disk_identifier_uefi_bootable_image ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_dict +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_dict ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_json_string +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_json_string ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_skip_malformed +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_skip_malformed ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_with_malformed +ironic_lib.tests.test_capabilities.ParseTestCase.test_from_old_format_with_malformed ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_no_old_format +ironic_lib.tests.test_capabilities.ParseTestCase.test_no_old_format ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_none +ironic_lib.tests.test_capabilities.ParseTestCase.test_none ... ok +ironic_lib.tests.test_capabilities.ParseTestCase.test_unexpected_type +ironic_lib.tests.test_capabilities.ParseTestCase.test_unexpected_type ... ok +ironic_lib.tests.test_json_rpc.TestService.test_expected_failure +ironic_lib.tests.test_json_rpc.TestService.test_expected_failure ... ok +ironic_lib.tests.test_json_rpc.TestSession.test_noauth +ironic_lib.tests.test_json_rpc.TestSession.test_noauth ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok +ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists +ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists ... ok +ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink +ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink ... ok ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_command_not_found ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_command_not_found ... ok -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser -ironic_lib.tests.test_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_not_use_standard_locale ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_not_use_standard_locale ... ok -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_no_operator -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_no_operator ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_unexpected_failure -ironic_lib.tests.test_json_rpc.TestClient.test_call_unexpected_failure ... ok -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok +ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink_ENOENT +ironic_lib.tests.test_utils.BareMetalUtilsTestCase.test_unlink_ENOENT ... ok +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr +ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test__append_operator_to_hints +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test__append_operator_to_hints ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_empty_value +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_empty_value ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_integer +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_integer ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values_space +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_multiple_values_space ... ok +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device +ironic_lib.tests.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok +ironic_lib.tests.test_json_rpc.TestService.test_expected_failure_oslo +ironic_lib.tests.test_json_rpc.TestService.test_expected_failure_oslo ... ok ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_no_env_variables ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_no_env_variables ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_no_operator +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_no_operator ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_single_value ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_extract_hint_operator_and_values_single_value ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_call_with_ssl -ironic_lib.tests.test_json_rpc.TestClient.test_call_with_ssl ... ok -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_dict -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_dict ... ok -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required -ironic_lib.tests.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_with_env_variables -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_with_env_variables ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_empty_value ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_empty_value ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_can_send_version -ironic_lib.tests.test_json_rpc.TestClient.test_can_send_version ... ok -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_old_format -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_from_old_format ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_in ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_in ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_cast_failure -ironic_lib.tests.test_json_rpc.TestClient.test_cast_failure ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_default -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_default ... ok -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_skip_none -ironic_lib.tests.test_capabilities.UpdateAndCombineTestCase.test_skip_none ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_no_op_no_space ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_no_op_no_space ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_cast_success -ironic_lib.tests.test_json_rpc.TestClient.test_cast_success ... ok -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_no_op_space ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_no_op_space ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_false -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_false ... ok -ironic_lib.tests.test_json_rpc.TestService.test_expected_failure -ironic_lib.tests.test_json_rpc.TestService.test_expected_failure ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_cast_success_with_version -ironic_lib.tests.test_json_rpc.TestClient.test_cast_success_with_version ... ok -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_op_no_space ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_op_no_space ... ok -ironic_lib.tests.test_json_rpc.TestClient.test_mask_secrets -ironic_lib.tests.test_json_rpc.TestClient.test_mask_secrets ... ok -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_with_env_variables +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_use_standard_locale_with_env_variables ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_op_space ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_op_space ... ok -ironic_lib.tests.test_json_rpc.TestService.test_expected_failure_oslo -ironic_lib.tests.test_json_rpc.TestService.test_expected_failure_oslo ... ok -ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist -ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_true -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_true ... ok -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_or ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_normalize_hint_expression_or ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper ... ok -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr -ironic_lib.tests.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_convert_rotational ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_convert_rotational ... ok -ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists -ironic_lib.tests.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists ... ok - WARNING [ironic_lib.mdns] None of addresses ['::2', '::3'] seem routable, using ::2 -ironic_lib.tests.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size -ironic_lib.tests.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper_run_as_root -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper_run_as_root ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_convert_size ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_convert_size ... ok -ironic_lib.tests.test_json_rpc.TestService.test_http_basic -ironic_lib.tests.test_json_rpc.TestService.test_http_basic ... ok -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_fallback -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_fallback ... ok -ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg -ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg ... ok - ERROR [ironic_lib.auth_basic] Problem reading auth user file: [Errno 2] No such file or directory: '/tmp/tmpkl62rg_m/tmpudutaes2.missing' -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_int_or ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_int_or ... ok -ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg_reraise -ironic_lib.tests.test_exception.TestIronicException.test___init___invalid_kwarg_reraise ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_authenticate -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_authenticate ... ok -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper_run_as_root -ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper_run_as_root ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_int_or_invalid ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_int_or_invalid ... ok -ironic_lib.tests.test_exception.TestIronicException.test___init___json_serializable -ironic_lib.tests.test_exception.TestIronicException.test___init___json_serializable ... ok -ironic_lib.tests.test_json_rpc.TestService.test_http_basic_not_authenticated -ironic_lib.tests.test_json_rpc.TestService.test_http_basic_not_authenticated ... ok -ironic_lib.tests.test_exception.TestIronicException.test___init___string_serializable -ironic_lib.tests.test_exception.TestIronicException.test___init___string_serializable ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_by_path ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_by_path ... ok - ERROR [ironic_lib.json_rpc.server] JSON RPC request {'method': 'no_result', 'id': 'abcd', 'params': {'context': {'user_name': 'admin'}}} is invalid - ERROR [ironic_lib.json_rpc.server] JSON RPC request {'jsonrpc': '2.0', 'id': 'abcd', 'params': {'context': {'user_name': 'admin'}}} is invalid - ERROR [ironic_lib.json_rpc.server] JSON RPC request {'method': 'no_result', 'params': {'context': {'user_name': 'admin'}}} is invalid - ERROR [ironic_lib.json_rpc.server] JSON RPC request {'jsonrpc': '2.0', 'params': {'context': {'user_name': 'admin'}}} is invalid - ERROR [ironic_lib.json_rpc.server] JSON RPC request 42 is not an object (batched requests are not supported) - ERROR [ironic_lib.json_rpc.server] JSON RPC request [] is not an object (batched requests are not supported) - ERROR [ironic_lib.json_rpc.server] JSON RPC request [{'jsonrpc': '2.0', 'method': 'no_result', 'params': {'context': {'user_name': 'admin'}}}] is not an object (batched requests are not supported) -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_authenticate -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_authenticate ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_hctl ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_hctl ... ok -ironic_lib.tests.test_json_rpc.TestService.test_invalid_requests -ironic_lib.tests.test_json_rpc.TestService.test_invalid_requests ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter_sample_rate -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_counter_sample_rate ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_model -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_model ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_unauthenticated -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_unauthenticated ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_timer -ironic_lib.tests.test_metrics.TestMetricLogger.test_context_mgr_timer ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_header -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_header ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_model ... ERROR [ironic_lib.json_rpc.server] JSON RPC request {'method': 'no_result', 'id': 'abcd', 'params': {'context': {'user_name': 'admin'}}} is invalid +ok + ERROR [ironic_lib.json_rpc.server] JSON RPC request {'jsonrpc': '2.0', 'id': 'abcd', 'params': {'context': {'user_name': 'admin'}}} is invalid ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_name ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_name ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_token -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_token ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter ... ok -ironic_lib.tests.test_json_rpc.TestService.test_malformed_context -ironic_lib.tests.test_json_rpc.TestService.test_malformed_context ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_rotational -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_rotational ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_rotational ERROR [ironic_lib.json_rpc.server] JSON RPC request {'method': 'no_result', 'params': {'context': {'user_name': 'admin'}}} is invalid + ... ok + ERROR [ironic_lib.json_rpc.server] JSON RPC request {'jsonrpc': '2.0', 'params': {'context': {'user_name': 'admin'}}} is invalid ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_serial -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_serial ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_unauthorized -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_unauthorized ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter_sample_rate -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_counter_sample_rate ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_serial ... ERROR [ironic_lib.json_rpc.server] JSON RPC request 42 is not an object (batched requests are not supported) +ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_size -ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_size ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_gauge -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_gauge ... ok -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_validate_auth_file -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_validate_auth_file ... ok +ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_size ERROR [ironic_lib.json_rpc.server] JSON RPC request [] is not an object (batched requests are not supported) + ... ok + ERROR [ironic_lib.json_rpc.server] JSON RPC request [{'jsonrpc': '2.0', 'method': 'no_result', 'params': {'context': {'user_name': 'admin'}}}] is not an object (batched requests are not supported) ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_vendor ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_vendor ... ok -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_https -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_https ... ok +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_mount -ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_mount ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_timer -ironic_lib.tests.test_metrics.TestMetricLogger.test_decorator_timer ... ok -ironic_lib.tests.test_json_rpc.TestService.test_mask_secrets -ironic_lib.tests.test_json_rpc.TestService.test_mask_secrets ... ok - WARNING [ironic_lib.utils] Unable to unmount temporary location /mnt/fake: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn_vendor_extension ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn_vendor_extension ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_get_metric_name -ironic_lib.tests.test_metrics.TestMetricLogger.test_get_metric_name ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_unmount -ironic_lib.tests.test_utils.MountedTestCase.test_failed_to_unmount ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn_with_extension ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_invalid_wwn_with_extension ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_init -ironic_lib.tests.test_metrics.TestMetricLogger.test_init ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_temporary -ironic_lib.tests.test_utils.MountedTestCase.test_temporary ... ok +ironic_lib.tests.test_json_rpc.TestService.test_http_basic +ironic_lib.tests.test_json_rpc.TestService.test_http_basic ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_no_hints ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_no_hints ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_counter -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_counter ... ok -ironic_lib.tests.test_json_rpc.TestService.test_method_not_found -ironic_lib.tests.test_json_rpc.TestService.test_method_not_found ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_with_dest -ironic_lib.tests.test_utils.MountedTestCase.test_with_dest ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_non_existent_hint ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_non_existent_hint ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_gauge -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_gauge ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_string_compare_operator_name ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_string_compare_operator_name ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_with_opts -ironic_lib.tests.test_utils.MountedTestCase.test_with_opts ... ok -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_timer -ironic_lib.tests.test_metrics.TestMetricLogger.test_send_timer ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_string_or_space ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_string_or_space ... ok -ironic_lib.tests.test_utils.MountedTestCase.test_with_type -ironic_lib.tests.test_utils.MountedTestCase.test_with_type ... ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_with_operators ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_with_operators ... ok -ironic_lib.tests.test_json_rpc.TestService.test_method_not_post -ironic_lib.tests.test_json_rpc.TestService.test_method_not_post ... ok -ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_empty -ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_empty ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_default +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_default ... ok ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_without_operators ironic_lib.tests.test_utils.ParseRootDeviceTestCase.test_parse_root_device_hints_without_operators ... ok -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_invalid_key -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_invalid_key ... ok -ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_parse -ironic_lib.tests.test_utils.ParseDeviceTagsTestCase.test_parse ... ok +ironic_lib.tests.test_json_rpc.TestService.test_http_basic_not_authenticated +ironic_lib.tests.test_json_rpc.TestService.test_http_basic_not_authenticated ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_false +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_false ... ok +ironic_lib.tests.test_json_rpc.TestService.test_invalid_requests +ironic_lib.tests.test_json_rpc.TestService.test_invalid_requests ... ok + WARNING [ironic_lib.mdns] None of addresses ['::2', '::3'] seem routable, using ::2 +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_fallback +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_fallback ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_true +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_log_stdout_true ... ok +ironic_lib.tests.test_json_rpc.TestService.test_malformed_context +ironic_lib.tests.test_json_rpc.TestService.test_malformed_context ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper_run_as_root +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_with_root_helper_run_as_root ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper ... ok +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper_run_as_root +ironic_lib.tests.test_utils.ExecuteTestCase.test_execute_without_root_helper_run_as_root ... ok +ironic_lib.tests.test_json_rpc.TestService.test_mask_secrets +ironic_lib.tests.test_json_rpc.TestService.test_mask_secrets ... ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok ... ok +ironic_lib.tests.test_json_rpc.TestService.test_method_not_found +ironic_lib.tests.test_json_rpc.TestService.test_method_not_found ... ok +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_https +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_https ... ok +ironic_lib.tests.test_json_rpc.TestService.test_method_not_post +ironic_lib.tests.test_json_rpc.TestService.test_method_not_post ... ok ironic_lib.tests.test_json_rpc.TestService.test_missing_argument ironic_lib.tests.test_json_rpc.TestService.test_missing_argument ... ok ironic_lib.tests.test_json_rpc.TestService.test_no_context ironic_lib.tests.test_json_rpc.TestService.test_no_context ... ok ironic_lib.tests.test_json_rpc.TestService.test_no_deny_methods ironic_lib.tests.test_json_rpc.TestService.test_no_deny_methods ... ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_interfaces +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_interfaces ... ok ERROR [ironic_lib.json_rpc.server] Cannot parse JSON RPC request as JSON - ERROR [ironic_lib.json_rpc.server] Cannot parse JSON RPC request as JSON +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_invalid_key +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_invalid_key ... ERROR [ironic_lib.json_rpc.server] Cannot parse JSON RPC request as JSON +ok ERROR [ironic_lib.json_rpc.server] Cannot parse JSON RPC request as JSON ironic_lib.tests.test_json_rpc.TestService.test_non_json_body ironic_lib.tests.test_json_rpc.TestService.test_non_json_body ... ok -ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts -ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts ... ok -ironic_lib.tests.test_keystone.AuthConfTestCase.test_os_service_types_alias -ironic_lib.tests.test_keystone.AuthConfTestCase.test_os_service_types_alias ... ok -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs ... ok -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_label -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_label ERROR [ironic_lib.utils] Failed to create a file system in /my/block/dev. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'fake' -Traceback (most recent call last): - File "/build/reproducible-path/python-ironic-lib-6.2.0/ironic_lib/utils.py", line 170, in mkfs - execute(*args, run_as_root=True, use_standard_locale=True) - File "", line 3, in do_not_call - File "/usr/lib/python3.12/unittest/mock.py", line 1137, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1141, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1196, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'fake' - ... ok ironic_lib.tests.test_json_rpc.TestService.test_notification ironic_lib.tests.test_json_rpc.TestService.test_notification ... ok - ERROR [ironic_lib.utils] Failed to make file system. File system foo is not supported. -Traceback (most recent call last): - File "/build/reproducible-path/python-ironic-lib-6.2.0/ironic_lib/utils.py", line 170, in mkfs - execute(*args, run_as_root=True, use_standard_locale=True) - File "", line 3, in do_not_call - File "/usr/lib/python3.12/unittest/mock.py", line 1137, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1141, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1196, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'No such file or directory' -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unexpected_error -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unexpected_error ... ok -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config ... ok -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unsupported_fs -ironic_lib.tests.test_utils.MkfsTestCase.test_mkfs_with_unsupported_fs ... ok -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth ... ok - ERROR [ironic_lib.keystone] Failed to load auth plugin from group test_group -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth_fail -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_auth_fail ... ok ironic_lib.tests.test_json_rpc.TestService.test_success ironic_lib.tests.test_json_rpc.TestService.test_success ... ok -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only ... ok ironic_lib.tests.test_json_rpc.TestService.test_success_no_result ironic_lib.tests.test_json_rpc.TestService.test_success_no_result ... ok ironic_lib.tests.test_json_rpc.TestService.test_unexpected_failure ironic_lib.tests.test_json_rpc.TestService.test_unexpected_failure ... ok -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_service_auth -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_service_auth ... ok -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_session -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_session ... ok -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_resolve -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_resolve ... ok -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple ... ok -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple_https -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple_https ... ok -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_with_path_and_port -ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_with_path_and_port ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_all -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_all ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_name -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_name ... ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_params +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_params ... ok +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry ... ok + ERROR [ironic_lib.auth_basic] Problem reading auth user file: [Errno 2] No such file or directory: '/tmp/tmpjo_fq3_a/tmp2z52ddt_.missing' +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_authenticate +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_authenticate ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_authenticate +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_authenticate ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_unauthenticated +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_middleware_unauthenticated ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_not_found ironic_lib.tests.test_mdns.GetEndpointTestCase.test_not_found ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_none -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_find_devices_none ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_empty_device_attribute -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_empty_device_attribute ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints ... ok - WARNING [ironic_lib.utils] The attribute "rotational" (with value "None") of device "/dev/sda" is not a valid Boolean. Skipping device. -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints2 -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints2 ... ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints3 -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_multiple_hints3 ... ok - WARNING [ironic_lib.utils] No device found that matches the root device hints {'size': '>=50', 'model': 's==foo'} -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_device_found -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_device_found ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_operators -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_no_operators ... ok - WARNING [ironic_lib.utils] The attribute "rotational" (with value "None") of device "/dev/sda" is not a valid Boolean. Skipping device. -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_one_hint -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_one_hint ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational ... ok -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational_convert_devices_bool -ironic_lib.tests.test_utils.MatchRootDeviceTestCase.test_match_root_device_hints_rotational_convert_devices_bool ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_header +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_header ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_token +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_parse_token ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_unauthorized +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_unauthorized ... ok +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_race +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_race ... ok +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_validate_auth_file +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_validate_auth_file ... ok +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_counter +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_counter ... ok +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_gauge +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_gauge ... ok +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_send +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_send ... ok +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_timer +ironic_lib.tests.test_metrics_collector.TestDictCollectionMetricLogger.test_timer ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_simple ironic_lib.tests.test_mdns.GetEndpointTestCase.test_simple ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_skip_invalid ironic_lib.tests.test_mdns.GetEndpointTestCase.test_skip_invalid ... ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_v6 ironic_lib.tests.test_mdns.GetEndpointTestCase.test_v6 ... ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_interfaces -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_interfaces ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_custom_port_and_path ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_custom_port_and_path ... ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_params -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_params ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_custom_port_path_and_protocol ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_custom_port_path_and_protocol ... ok -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_race -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_race ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_params ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_params ... ok ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_server ironic_lib.tests.test_mdns.GetEndpointTestCase.test_with_server ... ok +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_resolve +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_resolve ... ok +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple ... ok +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple_https +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_simple_https ... ok +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_with_path_and_port +ironic_lib.tests.test_mdns.ParseEndpointTestCase.test_with_path_and_port ... ok ---------------------------------------------------------------------- -Ran 283 tests in 33.898s +Ran 283 tests in 21.671s OK + stestr slowest -Test id Runtime (s) ----------------------------------------------------------------------------- ----------- -ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts 1.308 -ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config 1.228 -ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry 0.541 -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only 0.180 -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok 0.168 -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data 0.123 -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_fallback 0.120 -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_invalid_key 0.114 -ironic_lib.tests.test_mdns.GetEndpointTestCase.test_https 0.109 -ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure 0.107 +Test id Runtime (s) +----------------------------------------------------------------------------------- ----------- +ironic_lib.tests.test_keystone.AuthConfTestCase.test_add_auth_opts 0.414 +ironic_lib.tests.test_basic_auth.TestAuthBasic.test_auth_entry 0.392 +ironic_lib.tests.test_keystone.KeystoneTestCase.test_get_adapter_from_config 0.317 +ironic_lib.tests.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata 0.106 +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_failure 0.089 +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_race 0.087 +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_with_interfaces 0.087 +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_localhost_only 0.084 +ironic_lib.tests.test_mdns.RegisterServiceTestCase.test_ok 0.083 +ironic_lib.tests.test_mdns.GetEndpointTestCase.test_binary_data 0.082 + rm -rf .stestr make[1]: Leaving directory '/build/reproducible-path/python-ironic-lib-6.2.0' debian/rules override_dh_install @@ -2347,14 +2395,14 @@ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done -+ ls -1 debian/*.init.in +++ ls -1 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory # If there's a service.in file, use that one instead of the generated one set -e ; set -x ; for i in `ls -1 debian/*.service.in`; do \ MYPKG=`echo $i | sed s/.service.in//` ; \ cp $MYPKG.service.in $MYPKG.service ; \ done -+ ls -1 debian/*.service.in +++ ls -1 'debian/*.service.in' ls: cannot access 'debian/*.service.in': No such file or directory # Generate the systemd unit if there's no already existing .service.in set -e ; set -x ; for i in `ls debian/*.init.in` ; do \ @@ -2363,7 +2411,7 @@ pkgos-gen-systemd-unit $i ; \ fi \ done -+ ls debian/*.init.in +++ ls 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory dh_installinit --error-handler=true make[1]: Leaving directory '/build/reproducible-path/python-ironic-lib-6.2.0' @@ -2396,12 +2444,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/23088/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/33709 and its subdirectories -I: Current time: Thu Sep 26 22:52:21 -12 2024 -I: pbuilder-time-stamp: 1727434341 +I: removing directory /srv/workspace/pbuilder/23088 and its subdirectories +I: Current time: Fri Oct 31 07:17:38 +14 2025 +I: pbuilder-time-stamp: 1761844658