Diff of the two buildlogs: -- --- b1/build.log 2025-01-30 14:30:34.860526657 +0000 +++ b2/build.log 2025-01-30 14:36:14.521206481 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Jan 30 02:12:41 -12 2025 -I: pbuilder-time-stamp: 1738246361 +I: Current time: Thu Mar 5 10:53:55 +14 2026 +I: pbuilder-time-stamp: 1772657635 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -26,52 +26,84 @@ dpkg-source: info: applying fix-syntax-warning.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3418573/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3271428/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +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 Mar 4 20:54 /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/3271428/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3271428/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='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + 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]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='787e0f1f6a8c4151a0ebf58f927fd9a4' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - 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='3418573' - PS1='# ' - PS2='> ' + INVOCATION_ID=53d25406279347769d129edf1738efc1 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-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=3271428 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.RHpWpntD/pbuilderrc_9QXy --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.RHpWpntD/b1 --logfile b1/build.log ironic-python-agent_9.14.0-5.dsc' - SUDO_GID='110' - SUDO_UID='105' - 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.RHpWpntD/pbuilderrc_TuSq --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.RHpWpntD/b2 --logfile b2/build.log ironic-python-agent_9.14.0-5.dsc' + SUDO_GID=111 + SUDO_UID=106 + 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 ionos1-amd64 6.1.0-30-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.124-1 (2025-01-12) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.9+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.9-1~bpo12+1 (2025-01-19) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3418573/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3271428/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -435,7 +467,7 @@ Get: 264 http://deb.debian.org/debian unstable/main amd64 python3-tooz all 6.3.0-4 [52.6 kB] Get: 265 http://deb.debian.org/debian unstable/main amd64 python3-werkzeug all 3.1.3-2 [207 kB] Get: 266 http://deb.debian.org/debian unstable/main amd64 qemu-utils amd64 1:9.2.0+ds-5 [1926 kB] -Fetched 96.4 MB in 8s (11.6 MB/s) +Fetched 96.4 MB in 8s (12.8 MB/s) Preconfiguring packages ... Selecting previously unselected package freeipmi-common. (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 ... 19842 files and directories currently installed.) @@ -1287,8 +1319,8 @@ Setting up tzdata (2025a-1) ... Current default time zone: 'Etc/UTC' -Local time is now: Thu Jan 30 14:17:28 UTC 2025. -Universal Time is now: Thu Jan 30 14:17:28 UTC 2025. +Local time is now: Wed Mar 4 20:55:58 UTC 2026. +Universal Time is now: Wed Mar 4 20:55:58 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up libconfig11:amd64 (1.7.3-2) ... @@ -1552,7 +1584,11 @@ fakeroot is already the newest version (1.37-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/ironic-python-agent-9.14.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 > ../ironic-python-agent_9.14.0-5_source.changes +I: user script /srv/workspace/pbuilder/3271428/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/3271428/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ironic-python-agent-9.14.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 > ../ironic-python-agent_9.14.0-5_source.changes dpkg-buildpackage: info: source package ironic-python-agent dpkg-buildpackage: info: source version 9.14.0-5 dpkg-buildpackage: info: source distribution unstable @@ -1691,21 +1727,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=ironic-python-agent -+ echo ironic-python-agent -+ sed s/python-// +++ echo ironic-python-agent +++ sed s/python-// + PY_MODULE_NAME=ironic-agent -+ py3versions -vr -+ PYTHON3S=3.12 3.13 -+ [ yes = yes ] +++ py3versions -vr ++ PYTHON3S='3.12 3.13' ++ '[' yes = yes ']' + TARGET_DIR=tmp -+ pwd ++ for pyvers in ${PYTHON3S} +++ pwd + python3.12 setup.py install --install-layout=deb --root /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp /usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !! @@ -1750,104 +1791,104 @@ [pbr] AUTHORS complete (0.0s) running build running build_py -creating build/lib/ironic_python_agent/hardware_managers -copying ironic_python_agent/hardware_managers/cna.py -> build/lib/ironic_python_agent/hardware_managers -copying ironic_python_agent/hardware_managers/__init__.py -> build/lib/ironic_python_agent/hardware_managers -copying ironic_python_agent/hardware_managers/mlnx.py -> build/lib/ironic_python_agent/hardware_managers -copying ironic_python_agent/disk_partitioner.py -> build/lib/ironic_python_agent -copying ironic_python_agent/raid_utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/inspect.py -> build/lib/ironic_python_agent -copying ironic_python_agent/netutils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/partition_utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/errors.py -> build/lib/ironic_python_agent -copying ironic_python_agent/format_inspector.py -> build/lib/ironic_python_agent -copying ironic_python_agent/ironic_api_client.py -> build/lib/ironic_python_agent -copying ironic_python_agent/encoding.py -> build/lib/ironic_python_agent -copying ironic_python_agent/efi_utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/tls_utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/version.py -> build/lib/ironic_python_agent -copying ironic_python_agent/disk_utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/__init__.py -> build/lib/ironic_python_agent -copying ironic_python_agent/inject_files.py -> build/lib/ironic_python_agent -copying ironic_python_agent/hardware.py -> build/lib/ironic_python_agent -copying ironic_python_agent/config.py -> build/lib/ironic_python_agent -copying ironic_python_agent/burnin.py -> build/lib/ironic_python_agent -copying ironic_python_agent/dmi_inspector.py -> build/lib/ironic_python_agent -copying ironic_python_agent/utils.py -> build/lib/ironic_python_agent -copying ironic_python_agent/inspector.py -> build/lib/ironic_python_agent -copying ironic_python_agent/agent.py -> build/lib/ironic_python_agent -copying ironic_python_agent/numa_inspector.py -> build/lib/ironic_python_agent -copying ironic_python_agent/qemu_img.py -> build/lib/ironic_python_agent +creating build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/base.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/deploy.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/image.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/clean.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/rescue.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/__init__.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/flow.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/standby.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/service.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/poll.py -> build/lib/ironic_python_agent/extensions +copying ironic_python_agent/extensions/log.py -> build/lib/ironic_python_agent/extensions +creating build/lib/ironic_python_agent/tests/unit/hardware_managers +copying ironic_python_agent/tests/unit/hardware_managers/test_cna.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers +copying ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers +copying ironic_python_agent/tests/unit/hardware_managers/__init__.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers creating build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_base.py -> build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_flow.py -> build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_deploy.py -> build/lib/ironic_python_agent/tests/unit/extensions copying ironic_python_agent/tests/unit/extensions/test_rescue.py -> build/lib/ironic_python_agent/tests/unit/extensions +copying ironic_python_agent/tests/unit/extensions/test_standby.py -> build/lib/ironic_python_agent/tests/unit/extensions +copying ironic_python_agent/tests/unit/extensions/test_base.py -> build/lib/ironic_python_agent/tests/unit/extensions +copying ironic_python_agent/tests/unit/extensions/test_log.py -> build/lib/ironic_python_agent/tests/unit/extensions copying ironic_python_agent/tests/unit/extensions/test_poll.py -> build/lib/ironic_python_agent/tests/unit/extensions +copying ironic_python_agent/tests/unit/extensions/test_service.py -> build/lib/ironic_python_agent/tests/unit/extensions copying ironic_python_agent/tests/unit/extensions/__init__.py -> build/lib/ironic_python_agent/tests/unit/extensions +copying ironic_python_agent/tests/unit/extensions/test_flow.py -> build/lib/ironic_python_agent/tests/unit/extensions copying ironic_python_agent/tests/unit/extensions/test_clean.py -> build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_log.py -> build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_service.py -> build/lib/ironic_python_agent/tests/unit/extensions -copying ironic_python_agent/tests/unit/extensions/test_standby.py -> build/lib/ironic_python_agent/tests/unit/extensions copying ironic_python_agent/tests/unit/extensions/test_image.py -> build/lib/ironic_python_agent/tests/unit/extensions -creating build/lib/ironic_python_agent/api -copying ironic_python_agent/api/app.py -> build/lib/ironic_python_agent/api -copying ironic_python_agent/api/__init__.py -> build/lib/ironic_python_agent/api -creating build/lib/ironic_python_agent/tests/unit/hardware_managers -copying ironic_python_agent/tests/unit/hardware_managers/test_cna.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers -copying ironic_python_agent/tests/unit/hardware_managers/__init__.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers -copying ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers -copying ironic_python_agent/tests/unit/test_efi_utils.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_netutils.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_base.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_inject_files.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/extensions/test_deploy.py -> build/lib/ironic_python_agent/tests/unit/extensions +creating build/lib/ironic_python_agent/cmd +copying ironic_python_agent/cmd/agent.py -> build/lib/ironic_python_agent/cmd +copying ironic_python_agent/cmd/inspect.py -> build/lib/ironic_python_agent/cmd +copying ironic_python_agent/cmd/__init__.py -> build/lib/ironic_python_agent/cmd +copying ironic_python_agent/tests/__init__.py -> build/lib/ironic_python_agent/tests +creating build/lib/ironic_python_agent/hardware_managers +copying ironic_python_agent/hardware_managers/__init__.py -> build/lib/ironic_python_agent/hardware_managers +copying ironic_python_agent/hardware_managers/cna.py -> build/lib/ironic_python_agent/hardware_managers +copying ironic_python_agent/hardware_managers/mlnx.py -> build/lib/ironic_python_agent/hardware_managers copying ironic_python_agent/tests/unit/base.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_disk_partitioner.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_errors.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_format_inspector.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_ironic_api_client.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_base.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/dmi_inspector_data.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_dmi_inspector.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_format_inspector.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_disk_utils.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_numa_inspector.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_inspector.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/dmi_inspector_data.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_disk_partitioner.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_encoding.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_multi_hardware.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_netutils.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/__init__.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_api.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_raid_utils.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_efi_utils.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_partition_utils.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_agent.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_utils.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_burnin.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_ironic_api_client.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_tls_utils.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_disk_utils.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_qemu_img.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_errors.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_utils.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_numa_inspector.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_inject_files.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_api.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_multi_hardware.py -> build/lib/ironic_python_agent/tests/unit copying ironic_python_agent/tests/unit/test_hardware.py -> build/lib/ironic_python_agent/tests/unit -copying ironic_python_agent/tests/unit/test_raid_utils.py -> build/lib/ironic_python_agent/tests/unit -creating build/lib/ironic_python_agent/cmd -copying ironic_python_agent/cmd/inspect.py -> build/lib/ironic_python_agent/cmd -copying ironic_python_agent/cmd/__init__.py -> build/lib/ironic_python_agent/cmd -copying ironic_python_agent/cmd/agent.py -> build/lib/ironic_python_agent/cmd -copying ironic_python_agent/tests/__init__.py -> build/lib/ironic_python_agent/tests +copying ironic_python_agent/tests/unit/test_agent.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_tls_utils.py -> build/lib/ironic_python_agent/tests/unit +copying ironic_python_agent/tests/unit/test_burnin.py -> build/lib/ironic_python_agent/tests/unit creating build/lib/ironic_python_agent/tests/functional copying ironic_python_agent/tests/functional/base.py -> build/lib/ironic_python_agent/tests/functional -copying ironic_python_agent/tests/functional/__init__.py -> build/lib/ironic_python_agent/tests/functional copying ironic_python_agent/tests/functional/test_commands.py -> build/lib/ironic_python_agent/tests/functional +copying ironic_python_agent/tests/functional/__init__.py -> build/lib/ironic_python_agent/tests/functional +copying ironic_python_agent/qemu_img.py -> build/lib/ironic_python_agent +copying ironic_python_agent/dmi_inspector.py -> build/lib/ironic_python_agent +copying ironic_python_agent/tls_utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/config.py -> build/lib/ironic_python_agent +copying ironic_python_agent/raid_utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/version.py -> build/lib/ironic_python_agent +copying ironic_python_agent/numa_inspector.py -> build/lib/ironic_python_agent +copying ironic_python_agent/burnin.py -> build/lib/ironic_python_agent +copying ironic_python_agent/ironic_api_client.py -> build/lib/ironic_python_agent +copying ironic_python_agent/agent.py -> build/lib/ironic_python_agent +copying ironic_python_agent/inspect.py -> build/lib/ironic_python_agent +copying ironic_python_agent/utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/partition_utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/disk_partitioner.py -> build/lib/ironic_python_agent +copying ironic_python_agent/disk_utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/inspector.py -> build/lib/ironic_python_agent +copying ironic_python_agent/format_inspector.py -> build/lib/ironic_python_agent +copying ironic_python_agent/errors.py -> build/lib/ironic_python_agent +copying ironic_python_agent/hardware.py -> build/lib/ironic_python_agent +copying ironic_python_agent/__init__.py -> build/lib/ironic_python_agent +copying ironic_python_agent/encoding.py -> build/lib/ironic_python_agent +copying ironic_python_agent/efi_utils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/netutils.py -> build/lib/ironic_python_agent +copying ironic_python_agent/inject_files.py -> build/lib/ironic_python_agent creating build/lib/ironic_python_agent/tests/unit/hardware_managers/nvidia copying ironic_python_agent/tests/unit/hardware_managers/nvidia/test_nvidia_fw_update.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers/nvidia copying ironic_python_agent/tests/unit/hardware_managers/nvidia/__init__.py -> build/lib/ironic_python_agent/tests/unit/hardware_managers/nvidia -creating build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/rescue.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/poll.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/image.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/standby.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/log.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/base.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/deploy.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/service.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/__init__.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/flow.py -> build/lib/ironic_python_agent/extensions -copying ironic_python_agent/extensions/clean.py -> build/lib/ironic_python_agent/extensions +creating build/lib/ironic_python_agent/api +copying ironic_python_agent/api/app.py -> build/lib/ironic_python_agent/api +copying ironic_python_agent/api/__init__.py -> build/lib/ironic_python_agent/api running egg_info creating ironic_python_agent.egg-info writing ironic_python_agent.egg-info/PKG-INFO @@ -1867,203 +1908,204 @@ running install_lib creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/disk_partitioner.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/raid_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api -copying build/lib/ironic_python_agent/api/app.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api -copying build/lib/ironic_python_agent/api/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api -copying build/lib/ironic_python_agent/inspect.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/netutils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/partition_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/errors.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/format_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/ironic_api_client.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/encoding.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd -copying build/lib/ironic_python_agent/cmd/inspect.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd -copying build/lib/ironic_python_agent/cmd/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd -copying build/lib/ironic_python_agent/cmd/agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd -copying build/lib/ironic_python_agent/efi_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/qemu_img.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/dmi_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent copying build/lib/ironic_python_agent/tls_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/config.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/raid_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent copying build/lib/ironic_python_agent/version.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/disk_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/inject_files.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/numa_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/burnin.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/ironic_api_client.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_efi_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_netutils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_inject_files.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit copying build/lib/ironic_python_agent/tests/unit/base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_dmi_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_format_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_disk_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_numa_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/dmi_inspector_data.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit copying build/lib/ironic_python_agent/tests/unit/test_disk_partitioner.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_encoding.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_multi_hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_api.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_partition_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_burnin.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_errors.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_format_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit copying build/lib/ironic_python_agent/tests/unit/test_ironic_api_client.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_tls_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_qemu_img.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/dmi_inspector_data.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_dmi_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_flow.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_deploy.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions copying build/lib/ironic_python_agent/tests/unit/extensions/test_rescue.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions +copying build/lib/ironic_python_agent/tests/unit/extensions/test_standby.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions +copying build/lib/ironic_python_agent/tests/unit/extensions/test_base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions +copying build/lib/ironic_python_agent/tests/unit/extensions/test_log.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions copying build/lib/ironic_python_agent/tests/unit/extensions/test_poll.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions +copying build/lib/ironic_python_agent/tests/unit/extensions/test_service.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions copying build/lib/ironic_python_agent/tests/unit/extensions/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions +copying build/lib/ironic_python_agent/tests/unit/extensions/test_flow.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions copying build/lib/ironic_python_agent/tests/unit/extensions/test_clean.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_log.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_service.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/extensions/test_standby.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions copying build/lib/ironic_python_agent/tests/unit/extensions/test_image.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions -copying build/lib/ironic_python_agent/tests/unit/test_errors.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit -copying build/lib/ironic_python_agent/tests/unit/test_raid_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/extensions/test_deploy.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers +copying build/lib/ironic_python_agent/tests/unit/hardware_managers/test_cna.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers +copying build/lib/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia copying build/lib/ironic_python_agent/tests/unit/hardware_managers/nvidia/test_nvidia_fw_update.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia copying build/lib/ironic_python_agent/tests/unit/hardware_managers/nvidia/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia -copying build/lib/ironic_python_agent/tests/unit/hardware_managers/test_cna.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers copying build/lib/ironic_python_agent/tests/unit/hardware_managers/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers -copying build/lib/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers -copying build/lib/ironic_python_agent/tests/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests +copying build/lib/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_encoding.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_netutils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_raid_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_efi_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_partition_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_disk_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_qemu_img.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_numa_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_inject_files.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_api.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_multi_hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_tls_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit +copying build/lib/ironic_python_agent/tests/unit/test_burnin.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional copying build/lib/ironic_python_agent/tests/functional/base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional -copying build/lib/ironic_python_agent/tests/functional/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional copying build/lib/ironic_python_agent/tests/functional/test_commands.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional -copying build/lib/ironic_python_agent/hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/config.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/burnin.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/dmi_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/tests/functional/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional +copying build/lib/ironic_python_agent/tests/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests +copying build/lib/ironic_python_agent/inspect.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/rescue.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/poll.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/image.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/standby.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/log.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions copying build/lib/ironic_python_agent/extensions/base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions copying build/lib/ironic_python_agent/extensions/deploy.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/service.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/image.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/clean.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/rescue.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions copying build/lib/ironic_python_agent/extensions/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions copying build/lib/ironic_python_agent/extensions/flow.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/extensions/clean.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions -copying build/lib/ironic_python_agent/inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -copying build/lib/ironic_python_agent/numa_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/extensions/standby.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/service.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/poll.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/extensions/log.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions +copying build/lib/ironic_python_agent/utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/partition_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/disk_partitioner.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/disk_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers -copying build/lib/ironic_python_agent/hardware_managers/cna.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers copying build/lib/ironic_python_agent/hardware_managers/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers +copying build/lib/ironic_python_agent/hardware_managers/cna.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers copying build/lib/ironic_python_agent/hardware_managers/mlnx.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers -copying build/lib/ironic_python_agent/qemu_img.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_partitioner.py to disk_partitioner.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/raid_utils.py to raid_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/app.py to app.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspect.py to inspect.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/netutils.py to netutils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/partition_utils.py to partition_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/errors.py to errors.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/format_inspector.py to format_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/ironic_api_client.py to ironic_api_client.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/encoding.py to encoding.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/inspect.py to inspect.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/agent.py to agent.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/efi_utils.py to efi_utils.cpython-312.pyc +copying build/lib/ironic_python_agent/inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/format_inspector.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/errors.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/hardware.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api +copying build/lib/ironic_python_agent/api/app.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api +copying build/lib/ironic_python_agent/api/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api +creating /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd +copying build/lib/ironic_python_agent/cmd/agent.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd +copying build/lib/ironic_python_agent/cmd/inspect.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd +copying build/lib/ironic_python_agent/cmd/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd +copying build/lib/ironic_python_agent/__init__.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/encoding.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/efi_utils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/netutils.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +copying build/lib/ironic_python_agent/inject_files.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/qemu_img.py to qemu_img.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/dmi_inspector.py to dmi_inspector.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tls_utils.py to tls_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/config.py to config.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/raid_utils.py to raid_utils.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/version.py to version.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_utils.py to disk_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inject_files.py to inject_files.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_efi_utils.py to test_efi_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_netutils.py to test_netutils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_base.py to test_base.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inject_files.py to test_inject_files.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/numa_inspector.py to numa_inspector.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/burnin.py to burnin.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/ironic_api_client.py to ironic_api_client.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/agent.py to agent.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/base.py to base.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_dmi_inspector.py to test_dmi_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py to test_multi_hardware_clean_steps.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_format_inspector.py to test_format_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_utils.py to test_disk_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_numa_inspector.py to test_numa_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inspector.py to test_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/dmi_inspector_data.py to dmi_inspector_data.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_partitioner.py to test_disk_partitioner.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_encoding.py to test_encoding.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware.py to test_multi_hardware.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_api.py to test_api.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_partition_utils.py to test_partition_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_agent.py to test_agent.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_utils.py to test_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_burnin.py to test_burnin.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_errors.py to test_errors.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_format_inspector.py to test_format_inspector.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_ironic_api_client.py to test_ironic_api_client.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_tls_utils.py to test_tls_utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_qemu_img.py to test_qemu_img.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_base.py to test_base.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_flow.py to test_flow.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_deploy.py to test_deploy.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_base.py to test_base.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/dmi_inspector_data.py to dmi_inspector_data.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_dmi_inspector.py to test_dmi_inspector.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_rescue.py to test_rescue.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_standby.py to test_standby.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_base.py to test_base.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_log.py to test_log.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_poll.py to test_poll.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_service.py to test_service.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_flow.py to test_flow.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_clean.py to test_clean.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_log.py to test_log.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_service.py to test_service.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_standby.py to test_standby.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_image.py to test_image.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_errors.py to test_errors.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_hardware.py to test_hardware.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_raid_utils.py to test_raid_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_deploy.py to test_deploy.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_cna.py to test_cna.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py to test_mlnx.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia/test_nvidia_fw_update.py to test_nvidia_fw_update.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_cna.py to test_cna.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py to test_mlnx.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py to test_multi_hardware_clean_steps.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inspector.py to test_inspector.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_encoding.py to test_encoding.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_netutils.py to test_netutils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_raid_utils.py to test_raid_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_efi_utils.py to test_efi_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_partition_utils.py to test_partition_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_utils.py to test_disk_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_qemu_img.py to test_qemu_img.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_utils.py to test_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_numa_inspector.py to test_numa_inspector.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inject_files.py to test_inject_files.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_api.py to test_api.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware.py to test_multi_hardware.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_hardware.py to test_hardware.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_agent.py to test_agent.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_tls_utils.py to test_tls_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_burnin.py to test_burnin.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/base.py to base.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/__init__.py to __init__.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/test_commands.py to test_commands.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware.py to hardware.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/config.py to config.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/burnin.py to burnin.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/dmi_inspector.py to dmi_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/utils.py to utils.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/rescue.py to rescue.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/poll.py to poll.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/image.py to image.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/standby.py to standby.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/log.py to log.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspect.py to inspect.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/base.py to base.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/deploy.py to deploy.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/service.py to service.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/image.py to image.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/clean.py to clean.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/rescue.py to rescue.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/__init__.py to __init__.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/flow.py to flow.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/clean.py to clean.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspector.py to inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/agent.py to agent.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/numa_inspector.py to numa_inspector.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/cna.py to cna.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/standby.py to standby.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/service.py to service.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/poll.py to poll.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/log.py to log.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/utils.py to utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/partition_utils.py to partition_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_partitioner.py to disk_partitioner.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_utils.py to disk_utils.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/cna.py to cna.cpython-312.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/mlnx.py to mlnx.cpython-312.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/qemu_img.py to qemu_img.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspector.py to inspector.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/format_inspector.py to format_inspector.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/errors.py to errors.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware.py to hardware.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/app.py to app.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/agent.py to agent.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/inspect.py to inspect.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/encoding.py to encoding.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/efi_utils.py to efi_utils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/netutils.py to netutils.cpython-312.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inject_files.py to inject_files.cpython-312.pyc running install_egg_info Copying ironic_python_agent.egg-info to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent-9.14.0.egg-info Skipping SOURCES.txt running install_scripts Installing ironic-collect-introspection-data script to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/bin Installing ironic-python-agent script to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/bin -+ pwd ++ for pyvers in ${PYTHON3S} +++ pwd + python3.13 setup.py install --install-layout=deb --root /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp /usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !! @@ -2116,96 +2158,96 @@ writing top-level names to ironic_python_agent.egg-info/top_level.txt [pbr] Reusing existing SOURCES.txt running install_lib -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_partitioner.py to disk_partitioner.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/raid_utils.py to raid_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/app.py to app.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspect.py to inspect.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/netutils.py to netutils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/partition_utils.py to partition_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/errors.py to errors.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/format_inspector.py to format_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/ironic_api_client.py to ironic_api_client.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/encoding.py to encoding.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/inspect.py to inspect.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/agent.py to agent.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/efi_utils.py to efi_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/qemu_img.py to qemu_img.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/dmi_inspector.py to dmi_inspector.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tls_utils.py to tls_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/config.py to config.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/raid_utils.py to raid_utils.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/version.py to version.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_utils.py to disk_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inject_files.py to inject_files.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_efi_utils.py to test_efi_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_netutils.py to test_netutils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_base.py to test_base.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inject_files.py to test_inject_files.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/numa_inspector.py to numa_inspector.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/burnin.py to burnin.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/ironic_api_client.py to ironic_api_client.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/agent.py to agent.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/base.py to base.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_dmi_inspector.py to test_dmi_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py to test_multi_hardware_clean_steps.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_format_inspector.py to test_format_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_utils.py to test_disk_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_numa_inspector.py to test_numa_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inspector.py to test_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/dmi_inspector_data.py to dmi_inspector_data.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_partitioner.py to test_disk_partitioner.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_encoding.py to test_encoding.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware.py to test_multi_hardware.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_api.py to test_api.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_partition_utils.py to test_partition_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_agent.py to test_agent.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_utils.py to test_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_burnin.py to test_burnin.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_errors.py to test_errors.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_format_inspector.py to test_format_inspector.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_ironic_api_client.py to test_ironic_api_client.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_tls_utils.py to test_tls_utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_qemu_img.py to test_qemu_img.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_base.py to test_base.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_flow.py to test_flow.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_deploy.py to test_deploy.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_base.py to test_base.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/dmi_inspector_data.py to dmi_inspector_data.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_dmi_inspector.py to test_dmi_inspector.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_rescue.py to test_rescue.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_standby.py to test_standby.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_base.py to test_base.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_log.py to test_log.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_poll.py to test_poll.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_service.py to test_service.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_flow.py to test_flow.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_clean.py to test_clean.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_log.py to test_log.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_service.py to test_service.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_standby.py to test_standby.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_image.py to test_image.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_errors.py to test_errors.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_hardware.py to test_hardware.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_raid_utils.py to test_raid_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/extensions/test_deploy.py to test_deploy.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_cna.py to test_cna.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py to test_mlnx.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia/test_nvidia_fw_update.py to test_nvidia_fw_update.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/nvidia/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_cna.py to test_cna.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/__init__.py to __init__.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/hardware_managers/test_mlnx.py to test_mlnx.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware_clean_steps.py to test_multi_hardware_clean_steps.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inspector.py to test_inspector.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_encoding.py to test_encoding.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_netutils.py to test_netutils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_raid_utils.py to test_raid_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_efi_utils.py to test_efi_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_partition_utils.py to test_partition_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_disk_utils.py to test_disk_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_qemu_img.py to test_qemu_img.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_utils.py to test_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_numa_inspector.py to test_numa_inspector.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_inject_files.py to test_inject_files.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_api.py to test_api.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_multi_hardware.py to test_multi_hardware.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_hardware.py to test_hardware.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_agent.py to test_agent.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_tls_utils.py to test_tls_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/unit/test_burnin.py to test_burnin.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/base.py to base.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/test_commands.py to test_commands.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware.py to hardware.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/config.py to config.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/burnin.py to burnin.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/dmi_inspector.py to dmi_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/utils.py to utils.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/rescue.py to rescue.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/poll.py to poll.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/image.py to image.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/standby.py to standby.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/log.py to log.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspect.py to inspect.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/base.py to base.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/deploy.py to deploy.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/service.py to service.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/image.py to image.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/clean.py to clean.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/rescue.py to rescue.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/flow.py to flow.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/clean.py to clean.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspector.py to inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/agent.py to agent.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/numa_inspector.py to numa_inspector.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/cna.py to cna.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/standby.py to standby.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/service.py to service.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/poll.py to poll.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions/log.py to log.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/utils.py to utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/partition_utils.py to partition_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_partitioner.py to disk_partitioner.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/disk_utils.py to disk_utils.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/cna.py to cna.cpython-313.pyc byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware_managers/mlnx.py to mlnx.cpython-313.pyc -byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/qemu_img.py to qemu_img.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inspector.py to inspector.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/format_inspector.py to format_inspector.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/errors.py to errors.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/hardware.py to hardware.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/app.py to app.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/api/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/agent.py to agent.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/inspect.py to inspect.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/cmd/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/__init__.py to __init__.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/encoding.py to encoding.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/efi_utils.py to efi_utils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/netutils.py to netutils.cpython-313.pyc +byte-compiling /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/inject_files.py to inject_files.cpython-313.pyc running install_egg_info removing '/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent-9.14.0.egg-info' (and everything under it) Copying ironic_python_agent.egg-info to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent-9.14.0.egg-info @@ -2213,10 +2255,10 @@ running install_scripts Installing ironic-collect-introspection-data script to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/bin Installing ironic-python-agent script to /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/bin -+ pwd -+ rm -rf /build/reproducible-path/ironic-python-agent-9.14.0/debian/python*/usr/lib/python*/dist-packages/*.pth -+ pwd -+ rm -rf /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python*/dist-packages/*.pth +++ pwd ++ rm -rf '/build/reproducible-path/ironic-python-agent-9.14.0/debian/python*/usr/lib/python*/dist-packages/*.pth' +++ pwd ++ rm -rf '/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python*/dist-packages/*.pth' pkgos-dh_auto_test --no-py2 'ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout)' + PKGOS_TEST_PARALLEL=yes + PKGOS_TEST_SERIAL=no @@ -2224,120 +2266,71 @@ + 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 -+ PYTHON3S=3.12 3.13 -+ [ yes = no ] -+ [ no = yes ] -+ [ 3.12 = disabled ] -+ echo 3.12 -+ cut -d. -f1 ++ for i in $@ ++ case "${1}" in +++ py3versions -vr ++ PYTHON3S='3.12 3.13' ++ '[' 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/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ] -+ [ -z ] -+ pwd -+ echo Implicitly adding PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages +++ pwd ++ '[' -d /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ']' ++ '[' -z '' ']' +++ pwd ++ echo 'Implicitly adding PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages' Implicitly adding PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages -+ pwd +++ pwd + export PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages -+ [ -e .stestr.conf ] -+ [ -x /usr/bin/python3-stestr ] ++ PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ++ '[' -e .stestr.conf ']' ++ '[' -x /usr/bin/python3-stestr ']' + STESTR=stestr + rm -rf .stestr -+ PYTHON=python3.12 stestr run --parallel --subunit ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout) ++ PYTHON=python3.12 ++ stestr run --parallel --subunit 'ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout)' + subunit2pyunit - ERROR [root] Command failed: fake_async_command, error: An error occurred: failed -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command - raise ExecutionError() -ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics ... ok - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation ... ok - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure ... ok -ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute -ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name ... ok - ERROR [root] Command failed: fake_async_command, error: An error occurred: failed -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command - raise ExecutionError() -ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep ... ok -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success ... ok -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow - ERROR [root] Command failed: install_bootloader, error: meow +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq ... ok + ERROR [root] Failed Prerequisite check. Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict ... ok + ERROR [root] Failed to query firmware of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set ... ok + ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader - _install_grub2(device, - File "", line 3, in _install_grub2 + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version + response = self._request('GET', '/') + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request + resp = self.session.request(method, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in request File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ return self._mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -2346,23 +2339,281 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect -OSError: meow -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok +Exception: Boom +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok + ERROR [root] Failed to query tool configuration of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok + WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'node_node': 'also_not_node'} +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw ... ok + WARNING [ironic_python_agent.ironic_api_client] Failed looking up node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' at http://agent-api.ironic.example.org. Check if inspection has completed? Error 400: {"node": {"uuid": "deadbeef-dabb-ad00-b105-f00d00bab10c"}} + ERROR [root] Failed to query firmware of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'heartbeat_timeout': 300} + WARNING [ironic_python_agent.ironic_api_client] Got invalid heartbeat from the API: {'node': {'uuid': 'deadbeef-dabb-ad00-b105-f00d00bab10c'}} +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception ... ok + ERROR [root] Failed to set configuration of device , ['SRIOV_EN=20']: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories ... ok + WARNING [root] The root device was not detected in 27 seconds +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok + WARNING [root] The root device was not detected in 45 seconds + WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like ... ok + ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device is not supported with current fw + ERROR [ironic_python_agent.inspector] inspector url error 400: , proceeding with lookup + WARNING [root] The root device was not detected in 27 seconds +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ERROR [root] Configuraiton: UNSUPPORTED_PARAM is not supported by mstconfig, please update to the latest mstflint package. + ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled WARNING [ironic_python_agent.disk_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_python_agent.disk_utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'fake' + ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed ... ok + ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks ... ok + ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data ... ok +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled +ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw ... ok + ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured ... ok + ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 ... ok ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw ... ok +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... ok +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx ... ok ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_hashed_passwords ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_hashed_passwords ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 ... ok ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation ERROR [root] Rescue Operation failed when writing the hashed rescue password to the password file. Error +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty ... ok + ERROR [ironic_python_agent.utils] Failed to sync time using chrony to ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'time verboten' +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol ... ok + ERROR [root] Rescue Operation failed when writing the hashed rescue password to the password file. Error Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/rescue.py", line 48, in write_rescue_password with open(PASSWORD_FILE, 'w') as f: @@ -2376,54 +2627,205 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect OSError - ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure ... ok ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow - ERROR [ironic_python_agent.burnin] SMART test on /dev/sdj failed with 'string' -ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs -ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param ... ok +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code ... ok + ERROR [ironic_python_agent.utils] Unable to sync clock, available methods of 'ntpdate' or 'chrony' not found. +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node ... ok +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp ... ok +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps ... ok +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false ... ok + ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info ... ok + WARNING [ironic_python_agent.ironic_api_client] Connection error when accessing 2001:db8::1/v1/heartbeat/meow, trying the next URL. Error: +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit ... ok + ERROR [root] Command failed: foo_command, error: command execution failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_agent.py", line 44, in foo_execute + raise EXPECTED_ERROR +RuntimeError: command execution failed +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries ... ok WARNING [ironic_python_agent.efi_utils] Empty EFI partition detected. -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok + ERROR [root] Unexpected exception performing clean step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +RuntimeError: boom +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct ... ok +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ERROR [root] Command failed: execute_clean_step, error: Clean step failed: Unexpected exception performing clean step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +RuntimeError: boom + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 88, in execute_clean_step + raise errors.CleaningError(msg) +ironic_python_agent.errors.CleaningError: Clean step failed: Unexpected exception performing clean step erase_devices. RuntimeError: boom + ... ok + ERROR [root] Error performing clean step erase_devices +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot + ERROR [root] Command failed: execute_clean_step, error: Block device caused unknown error: I'm a teapot +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. Command: None Exit code: - @@ -2446,13 +2848,19 @@ Exit code: - Stdout: 'boom' Stderr: None - WARNING [root] No hardware manager was able to handle interface foobar -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired ... ok +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ... ok + ERROR [root] Malformed clean_step, no "step" key: {} + ERROR [root] Command failed: execute_clean_step, error: Malformed clean_step, no "step" key: {} +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 74, in execute_clean_step + raise ValueError(msg) +ValueError: Malformed clean_step, no "step" key: {} ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. Command: None Exit code: - @@ -2486,16 +2894,16 @@ Exit code: - Stdout: 'no umount' Stderr: None - ERROR [ironic_python_agent.burnin] fio (disk) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [root] Cannot find detailed information about interface eth0 -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info ... ok + ERROR [root] Command failed: fake_async_command, error: An error occurred: failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command + raise ExecutionError() +ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. Command: None Exit code: - @@ -2524,186 +2932,48 @@ Exit code: - Stdout: 'boom' Stderr: None - ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None. - WARNING [ironic_python_agent.extensions.image] Unable to umount vfat partitions. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/dev. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/proc. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/run. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/sys. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface bond0 -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok - ERROR [root] Tried to execute fake.fake_sync_command, agent is still executing Command name: name, params: {}, status: RUNNING, result: None. -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found ... ok - ERROR [root] Invalid content error: Invalid request body: baz -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command - result = ext.execute(command_part, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -ironic_python_agent.errors.InvalidContentError: Invalid request body: baz -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios ... ok - WARNING [root] Cannot find detailed information about interface eth0 + WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure ... ok +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ... ok + ERROR [root] Clean version mismatch for command execute_clean_step +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok ERROR [root] Failed to move file: /firmware_images/fw1.bin, - ERROR [root] Command execution error: Command execution failed: foo bar baz -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command - result = ext.execute(command_part, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -ironic_python_agent.errors.CommandExecutionError: Command execution failed: foo bar baz - WARNING [ironic_python_agent.inspector] Failed to gather vendor id, product id or pci class from PCI device bar: - WARNING [ironic_python_agent.inspector] Wrong format of vendor id, product id or pci class in PCI device baz: - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. + WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: + WARNING [ironic_python_agent.disk_utils] Unable to probe for partitions on device /dev/fake, the partitioning table may be broken. Error: Unexpected error while running command. Command: None Exit code: - -Stdout: 'boop' +Stdout: None Stderr: None - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/md/esp using the install command which does not place Secure Boot signed binaries. - WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. -Command: grub2-install -Exit code: 1 -Stdout: '' -Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. - WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. -Command: grub2-install -Exit code: 1 -Stdout: '' -Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content ... ok - ERROR [root] Duplicate componentFlavor MT_0000000540 - WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device foo: - WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device bar: - ERROR [ironic_python_agent.utils] Failed to get list of PCI devices: -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp ... ok - ERROR [root] Unexpected exception performing deploy step erase_devices. RuntimeError: boom +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok + ERROR [root] Unexpected exception performing service step erase_devices. RuntimeError: boom Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -2716,9 +2986,12 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect RuntimeError: boom - ERROR [root] Command failed: execute_deploy_step, error: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', ), ('eth1', )] +ok + ERROR [root] Command failed: execute_service_step, error: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -2738,14 +3011,32 @@ File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 88, in execute_deploy_step - raise errors.DeploymentError(msg) -ironic_python_agent.errors.DeploymentError: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom - ERROR [root] Failed to open URL data: HTTP Error 500: Internal Error - WARNING [root] Cannot find detailed information about interface eth0 - ERROR [root] Error performing deploy step erase_devices + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 88, in execute_service_step + raise errors.ServicingError(msg) +ironic_python_agent.errors.ServicingError: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info ... ok + WARNING [ironic_python_agent.netutils] Trailing byte received in an LLDP package: b'5' +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit ... ok + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boop' +Stderr: None +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit ... ok + ERROR [root] Error performing service step erase_devices Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -2758,12 +3049,13 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - ERROR [root] Command failed: execute_deploy_step, error: Block device caused unknown error: I'm a teapot + WARNING [ironic_python_agent.dmi_inspector] Failed to parse Handle type in dmi output: list index out of range + ERROR [root] Command failed: execute_service_step, error: Block device caused unknown error: I'm a teapot Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -2776,265 +3068,49 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success ... ok - ERROR [root] Failed to open URL data: -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root ... ok -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror ... ok - ERROR [root] Invalid parameters for image {'url': 'http://10.10.10.10/firmware_images/fw2.bin', 'checksum': 'a94e683ea16d9ae44768f0a65942234c', 'checksumType': 'sha512', 'component': 'MT_0000000652', 'version': '24.34.1002'},please provide the following parameters url, checksum, checksumType, componentFlavor, version - ERROR [root] Malformed deploy_step, no "step" key: {} - ERROR [root] Command failed: execute_deploy_step, error: Malformed deploy_step, no "step" key: {} +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string ... ok + ERROR [root] Command failed: fake_async_command, error: An error occurred: failed Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 73, in execute_deploy_step - raise ValueError(msg) -ValueError: Malformed deploy_step, no "step" key: {} - ERROR [root] Extension do not found -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 267, in execute_command - ext = self.get_extension(extension_part) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 238, in get_extension - ext = self.ext_mgr[extension_name].obj - ~~~~~~~~~~~~^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 340, in __getitem__ - return self._extensions_by_name[name] - ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^ -KeyError: 'do' - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - ERROR [ironic_python_agent.utils] collector failed: boom - WARNING [root] Cannot find detailed information about interface eth0 -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception ... ok - WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', ), ('eth1', )] - ERROR [root] Failed to query firmware of device : Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail ... ok - WARNING [ironic_python_agent.netutils] Trailing byte received in an LLDP package: b'5' - ERROR [root] Clean version mismatch for command execute_deploy_step -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema ... ok - ERROR [root] Mismatch provided checksum a94e683ea16d9ae44768f0a65942234d for image http://10.10.10.10/firmware_images/fw1.bin - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0003883838653564453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0003883838653564453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [root] Cannot find detailed information about interface eth0.100 - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.019672632217407227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.019672632217407227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.024944067001342773 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.024944067001342773 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.028896331787109375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.028896331787109375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03296470642089844 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03296470642089844 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.033664703369140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.033664703369140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04093456268310547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04093456268310547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.041380882263183594 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.041380882263183594 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.044881343841552734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.044881343841552734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04885411262512207 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled ... ok -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme ... ERROR [root] Failed to query tool configuration of device : Unexpected error while running command. + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command + raise ExecutionError() +ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed + ERROR [root] Failed to open URL data: HTTP Error 500: Internal Error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step ... ok + ERROR [ironic_python_agent.utils] failed to run dmidecode: Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: None -ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info ... ok - ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228 - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.012576580047607422 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.012576580047607422 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.016272783279418945 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.016272783279418945 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.020313262939453125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.020313262939453125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.024226903915405273 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.024226903915405273 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', )] - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.02832317352294922 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.02832317352294922 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.032314300537109375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.032314300537109375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.036260366439819336 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.036260366439819336 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04029679298400879 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04029679298400879 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04432940483093262 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04432940483093262 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04830813407897949 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None. - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface eth0.100 - WARNING [root] Cannot find detailed information about interface eth0.101 -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args ... ok +ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute +ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... ok + WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', )] + ERROR [root] Malformed service_step, no "step" key: {} + ERROR [root] Failed to open URL data: + ERROR [root] Command failed: execute_service_step, error: Malformed service_step, no "step" key: {} +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 74, in execute_service_step + raise ValueError(msg) +ValueError: Malformed service_step, no "step" key: {} +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid ... ok ERROR [ironic_python_agent.netutils] Socket for network interface eth0 said that it was ready to read we were unable to read from the socket while trying to get LLDP packet. Skipping this network interface. Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/netutils.py", line 197, in _get_lldp_info @@ -3052,271 +3128,30 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect OSError: BOOM - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00041031837463378906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00041031837463378906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ERROR [root] The provided firmware version 20.34.1012 does not match image firmware version 20.35.1012 - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.012113094329833984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.012113094329833984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.015878915786743164 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.015878915786743164 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ERROR [root] Failed to query firmware of device : Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.020103931427001953 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.020103931427001953 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.023880720138549805 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.023880720138549805 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.025409936904907227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.025409936904907227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ERROR [ironic_python_agent.utils] boom - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03204965591430664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03204965591430664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.035952091217041016 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.035952091217041016 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03989911079406738 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03989911079406738 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04398846626281738 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface eth1 - WARNING [root] Cannot find detailed information about interface eth0.100 - WARNING [root] Cannot find detailed information about interface eth0.101 - WARNING [root] Cannot find detailed information about interface eth1.102 - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0002720355987548828 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0002720355987548828 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.efi_utils] Invalid sgdisk line: I am a teaport - WARNING [ironic_python_agent.efi_utils] No UUID information provided in sgdisk output for partition 1 on device /dev/fake - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0050580501556396484 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0050580501556396484 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [root] Cannot find detailed information about interface eth1.103 - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00713801383972168 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00713801383972168 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.013117074966430664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.013117074966430664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.016916990280151367 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.016916990280151367 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.020984888076782227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.020984888076782227 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.024922609329223633 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.024922609329223633 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.029204130172729492 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.029204130172729492 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03295707702636719 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03295707702636719 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03693675994873047 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception ... ok - ERROR [root] Failed to set configuration of device , ['SRIOV_EN=20']: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets. - WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'} - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01573944091796875 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01573944091796875 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.020726442337036133 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.020726442337036133 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.024992704391479492 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.024992704391479492 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.032726287841796875 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.032726287841796875 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03672313690185547 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03672313690185547 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04068470001220703 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04068470001220703 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.044605255126953125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.044605255126953125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04863452911376953 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04863452911376953 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.05271410942077637 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.05271410942077637 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.05559968948364258 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [ironic_python_agent.disk_utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'fake' -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... ok - WARNING [ironic_python_agent.disk_utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'fake' - ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device is not supported with current fw - WARNING [root] Something went wrong when readlink for interface eth2. Error: fake -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken ... ok - ERROR [root] Failed Prerequisite check. Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok ... ok - ERROR [root] Command failed: foo_command, error: command execution failed + ERROR [root] Command failed: sleep, error: An error occurred: An unexpected error occurred. Please try back later. Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_agent.py", line 44, in foo_execute - raise EXPECTED_ERROR -RuntimeError: command execution failed -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second ... ok - ERROR [root] Configuraiton: UNSUPPORTED_PARAM is not supported by mstconfig, please update to the latest mstflint package. - WARNING [ironic_python_agent.inspector] failed to get system journal -ironic-python-agent: line 1. -ironic-python-agent: line 2 message - ERROR [ironic_python_agent.utils] foo - ERROR [ironic_python_agent.utils] bar - ERROR [ironic_python_agent.utils] baz - ERROR [ironic_python_agent.utils] foo - ERROR [root] duplicate settings for device ID 1017 - ERROR [ironic_python_agent.extensions.poll] Node lookup data can only be set when the Ironic Python Agent is running in standalone mode. - ERROR [root] There is no deviceID provided for this settings - WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed - WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed - WARNING [ironic_python_agent.extensions.image] Failed to copy grubenv file. Error: copy failed - ERROR [root] Encountered issue attempting to validate the supplied configuration drive. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp1zb3qib6/tmplkxdba66, error: [Errno 21] Is a directory: '/tmp/tmp1zb3qib6/tmplkxdba66' -/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:57: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_before_utc. - self.assertLess(cert.not_valid_before, -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ... ok -/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:59: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_after_utc. - self.assertGreater(cert.not_valid_after, -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner ... ok - ERROR [ironic_python_agent.utils] Failed to sync time using chrony to ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'time verboten' - WARNING [ironic_python_agent.disk_utils] Unable to probe for partitions on device /dev/fake, the partitioning table may be broken. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmphrdttkk_/tmpd14d2_wq, error: [Errno 21] Is a directory: '/tmp/tmphrdttkk_/tmpd14d2_wq' -ironic-python-agent: Excluding device sda1 from virtual mediaconsideration as it is a partition. -ironic-python-agent: Found possible vmedia candidate /dev/sda2, however the device failed vmedia validity checking. -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok -ironic-python-agent: Was unable to execute the lsblk command. Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.dmi_inspector] Failed to parse Handle type in dmi output: list index out of range - ERROR [ironic_python_agent.utils] Unable to sync clock, available methods of 'ntpdate' or 'chrony' not found. - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpxzdlqhq4/tmpvb_lqjed, error: [Errno 21] Is a directory: '/tmp/tmpxzdlqhq4/tmpvb_lqjed' - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpxzdlqhq4/tmppr9ygx1e, error: [Errno 21] Is a directory: '/tmp/tmpxzdlqhq4/tmppr9ygx1e' - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmpck9mjac8/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep + time.sleep(sleep_info['time']) + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +ironic_python_agent.errors.RESTError: An error occurred: An unexpected error occurred. Please try back later. + ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow + raise errors.CommandExecutionError( +ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. Command: None Exit code: - @@ -3342,58 +3177,11 @@ Exit code: - Stdout: 'boom' Stderr: None - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config ... ok -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string ... ok -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled -ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit ... ok - ERROR [root] We were unable to make a new filesystem for the configuration drive. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpjy1vrv6l/tmpanuqeoyh, error: [Errno 21] Is a directory: '/tmp/tmpjy1vrv6l/tmpanuqeoyh' - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpjy1vrv6l/tmpwnv5mbgy, error: [Errno 21] Is a directory: '/tmp/tmpjy1vrv6l/tmpwnv5mbgy' -ironic-python-agent: Did not identify any virtual media candidates devices. - ERROR [root] Command failed: sleep, error: An error occurred: An unexpected error occurred. Please try back later. +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0003075599670410156 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0003075599670410156 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + ERROR [root] Command failed: sleep, error: foo Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) @@ -3406,9 +3194,9 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call return self._execute_mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -ironic_python_agent.errors.RESTError: An error occurred: An unexpected error occurred. Please try back later. + File "/usr/lib/python3.12/unittest/mock.py", line 1202, in _execute_mock_call + raise result +Exception: foo ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run @@ -3417,29 +3205,10 @@ File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow raise errors.CommandExecutionError( ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed - WARNING [root] We were unable to examine the configuration drive, bypassing. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit ... ok -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail ... ok - ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - ERROR [root] Unexpected exception performing clean step erase_devices. RuntimeError: boom + ERROR [ironic_python_agent.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets. + ERROR [root] Unexpected exception performing deploy step erase_devices. RuntimeError: boom Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -3452,10 +3221,16 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect RuntimeError: boom - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.029007911682128906 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: - ERROR [root] Command failed: execute_clean_step, error: Clean step failed: Unexpected exception performing clean step erase_devices. RuntimeError: boom + ERROR [root] Mismatch provided checksum a94e683ea16d9ae44768f0a65942234d for image http://10.10.10.10/firmware_images/fw1.bin + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00758051872253418 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00758051872253418 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008040189743041992 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008040189743041992 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008363008499145508 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008363008499145508 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + ERROR [root] Command failed: execute_deploy_step, error: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -3475,182 +3250,28 @@ File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 88, in execute_clean_step - raise errors.CleaningError(msg) -ironic_python_agent.errors.CleaningError: Clean step failed: Unexpected exception performing clean step erase_devices. RuntimeError: boom -ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger -ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger ... ok - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md1. Skipping - ERROR [root] Command failed: sleep, error: foo -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep - time.sleep(sleep_info['time']) - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1202, in _execute_mock_call - raise result -Exception: foo - ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow - raise errors.CommandExecutionError( -ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed - ERROR [ironic_python_agent.utils] failed to run dmidecode: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting ... ok -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac ... ok -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac ... ok -ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives -ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives ... ok -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success ... ok -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi ... ok -ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error -ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error ... ok -ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise -ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success ... ok -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file ... ok - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.02445244789123535 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node ... ok -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work ... ok - ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error ... ok - ERROR [root] Error performing clean step erase_devices + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 88, in execute_deploy_step + raise errors.DeploymentError(msg) +ironic_python_agent.errors.DeploymentError: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008686065673828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008686065673828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Handle' + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009007692337036133 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009007692337036133 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00932455062866211 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00932455062866211 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009637117385864258 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009637117385864258 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009970903396606445 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009970903396606445 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.010303020477294922 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + ERROR [root] Clean version mismatch for command execute_service_step + WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices' + ERROR [root] Error performing deploy step erase_devices Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -3663,12 +3284,15 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - ERROR [root] Command failed: execute_clean_step, error: Block device caused unknown error: I'm a teapot + WARNING [ironic_python_agent.utils] Ignoring malformed capability 'test:world:2'. Format should be 'key:val'. + WARNING [ironic_python_agent.utils] Ignoring malformed capability 'badformat'. Format should be 'key:val'. + ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228 + ERROR [root] Command failed: execute_deploy_step, error: Block device caused unknown error: I'm a teapot Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step result = hardware.dispatch_to_managers(step['step'], node, ports, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 3, in dispatch_to_managers @@ -3681,24 +3305,71 @@ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset ... ok - ERROR [ironic_python_agent.agent] error sending heartbeat to +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00023293495178222656 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00023293495178222656 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0006878376007080078 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0006878376007080078 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0010242462158203125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0010242462158203125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0013461112976074219 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0013461112976074219 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0016679763793945312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0016679763793945312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00228118896484375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00228118896484375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006704568862915039 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006704568862915039 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007074594497680664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007074594497680664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007559299468994141 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007559299468994141 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008018732070922852 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + ERROR [root] Malformed deploy_step, no "step" key: {} + ERROR [root] Command failed: execute_deploy_step, error: Malformed deploy_step, no "step" key: {} Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/agent.py", line 148, in do_heartbeat - self.api.heartbeat( - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -Exception: uh oh! + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 73, in execute_deploy_step + raise ValueError(msg) +ValueError: Malformed deploy_step, no "step" key: {} + ERROR [root] The provided firmware version 20.34.1012 does not match image firmware version 20.35.1012 + ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image + ERROR [ironic_python_agent.disk_utils] Security: Image failed safety check + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00023555755615234375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00023555755615234375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0007071495056152344 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0007071495056152344 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0010533332824707031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0010533332824707031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0014057159423828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0014057159423828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0017354488372802734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0017354488372802734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002061605453491211 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.002061605453491211 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0023736953735351562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0023736953735351562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0026836395263671875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0026836395263671875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00711512565612793 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00711512565612793 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007506370544433594 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step ... ok + ERROR [root] Clean version mismatch for command execute_deploy_step WARNING [ironic_python_agent.agent] Cannot get route to host fc00:1111::1: Unexpected error while running command. Command: None Exit code: - @@ -3710,33 +3381,84 @@ Exit code: - Stdout: 'boom' Stderr: None -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl ... ok - ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 ... ok - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Response headers: - ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid ... ok - ERROR [root] Malformed clean_step, no "step" key: {} - ERROR [root] Command failed: execute_clean_step, error: Malformed clean_step, no "step" key: {} +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0002486705780029297 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0002486705780029297 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00605463981628418 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00605463981628418 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006469011306762695 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006469011306762695 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006767988204956055 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006767988204956055 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007065773010253906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007065773010253906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0073699951171875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0073699951171875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007675647735595703 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007675647735595703 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00797271728515625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00797271728515625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008269071578979492 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008269071578979492 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008572578430175781 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping + ERROR [ironic_python_agent.agent] error sending heartbeat to Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 74, in execute_clean_step - raise ValueError(msg) -ValueError: Malformed clean_step, no "step" key: {} - ERROR [ironic_python_agent.disk_utils] Security: Image failed safety check - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/agent.py", line 148, in do_heartbeat + self.api.heartbeat( + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +Exception: uh oh! +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0018923282623291016 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0018923282623291016 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006300449371337891 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006300449371337891 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0068836212158203125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0068836212158203125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00740361213684082 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00740361213684082 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007897138595581055 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007897138595581055 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008412361145019531 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008412361145019531 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008921623229980469 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008921623229980469 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009428739547729492 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009428739547729492 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00997161865234375 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00997161865234375 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.efi_utils] Invalid sgdisk line: I am a teaport + WARNING [ironic_python_agent.efi_utils] No UUID information provided in sgdisk output for partition 1 on device /dev/fake + ERROR [root] duplicate settings for device ID 1017 ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -3796,7 +3518,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -3810,7 +3532,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -3829,265 +3551,115 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: usb WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None. -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed ... ok -ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls -ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid ... ok - ERROR [ironic_python_agent.extensions.image] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output ... ok - ERROR [root] Clean version mismatch for command execute_clean_step -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok ... ok -ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys -ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse ... ok -POST: /v1/commands {'name': 'do_things', 'params': []} -GOT: -POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands {} -GOT: -POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} -GOT: -POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} -GOT: -GET: /v1/status None -GOT: -GET: /v1/commands/abc123 None -GOT: -GET: /v1/commands None -GOT: -GET: /v1/foo None -GOT: -GET: / None -GOT: -GET: /v1 None -GOT: -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... ok - WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Handle' -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd ... ok -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok ... ok -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success ... ok -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted ... ok - WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'lacking kernel support' -Stderr: None - WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices' -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success ... ok -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.014240503311157227 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: +ironic-python-agent: Excluding device sdh1 from virtual mediaconsideration as it is a partition. +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on ... WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping +ok +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md1. Skipping +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent ... ok + ERROR [root] There is no deviceID provided for this settings +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv ... ok +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable ... ok +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector ... ok +ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: sata + ERROR [ironic_python_agent.extensions.poll] Node lookup data can only be set when the Ironic Python Agent is running in standalone mode. +ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: scsi +/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:57: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_before_utc. + self.assertLess(cert.not_valid_before, +/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:59: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_after_utc. + self.assertGreater(cert.not_valid_after, +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args ... ok +ironic-python-agent: Device sdh appears to not qualify as virtual due to the device size. Size: 1610612736000 +ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: usb +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc ... ok +ironic-python-agent: Excluding device sda1 from virtual mediaconsideration as it is a partition. +ironic-python-agent: Found possible vmedia candidate /dev/sda2, however the device failed vmedia validity checking. +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. + ERROR [ironic_python_agent.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_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false ... ok + ERROR [ironic_python_agent.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-python-agent: Was unable to execute the lsblk command. Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: None - WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger - WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello - ERROR [root] Command failed: power_off, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1041, in _run_shutdown_command - utils.execute("echo o > /proc/sysrq-trigger", shell=True) - File "", line 3, in execute - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. + WARNING [root] Can't find field vendor for device lo in device class net +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str ... ok + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure ... ok +ironic-python-agent: Did not identify any virtual media candidates devices. +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records ... ok + ERROR [root] Finding the partition with UUID 11111111-2222-3333-4444-555555555555 on device /dev/fake failed with Unexpected error while running command. Command: None Exit code: - -Stdout: None +Stdout: 'boom' Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off - self._run_shutdown_command('poweroff') - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command - raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) -ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device ... ok - WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -4147,7 +3719,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -4161,7 +3733,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -4180,128 +3752,73 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering -ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled ... ok -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok - ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run ... ok - ERROR [ironic_python_agent.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. - ERROR [root] Command failed: power_off, error: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 825, in sync_clock - execute('ntpdate', CONF.ntp_server) - File "", line 3, in execute - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1096, in _sync_clock - utils.sync_clock(ignore_errors=ignore_errors) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 832, in sync_clock - raise errors.CommandExecutionError(msg) -ironic_python_agent.errors.CommandExecutionError: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off - self._run_shutdown_command('poweroff') - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1016, in _run_shutdown_command - self._sync_clock(ignore_errors=True) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1106, in _sync_clock - raise errors.ClockSyncError(msg) -ironic_python_agent.errors.ClockSyncError: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None WARNING [root] Can't find field vendor for device lo in device class net - ERROR [ironic_python_agent.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. - ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. - WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict ... ok - ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty ... ok + ERROR [root] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake + ERROR [ironic_python_agent.burnin] SMART test on /dev/sdj failed with 'string' + ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmpy393iphb/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum +ironic-python-agent: Copying configuration from /tmp/tmpzc249vlj/etc/ironic-python-agent to /etc/ironic-python-agent +ironic-python-agent: Copying configuration from /tmp/tmpzc249vlj/etc/ironic-python-agent.d to /etc/ironic-python-agent.d +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist ... ok +ironic-python-agent: Copying configuration from /tmp/tmpaqbfk6wx/etc/ironic-python-agent to /etc/ironic-python-agent +ironic-python-agent: Copying configuration from /tmp/tmpaqbfk6wx/etc/ironic-python-agent.d to /etc/ironic-python-agent.d +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase ... ok +ironic-python-agent: /some/path/etc/ironic-python-agent not found +ironic-python-agent: /some/path/etc/ironic-python-agent.d not found +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device ... ok +/bin/sh: line 1: mkisofs: command not found +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -4361,7 +3878,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -4375,7 +3892,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -4394,81 +3911,25 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. - WARNING [root] Can't find field vendor for device lo in device class net - ERROR [root] Command failed: prepare_image, error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 980, in prepare_image - _validate_partitioning(device) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 794, in _validate_partitioning - disk_utils.partprobe(device) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/disk_utils.py", line 665, in partprobe - utils.execute('partprobe', device, attempts=attempts) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/base.py", line 89, in do_not_call - raise Exception( -Exception: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails ... ok -ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching -ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty ... ok - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. - WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable ... ok - WARNING [ironic_python_agent.extensions.standby] Failed to call get_disk_identifier: Unable to obtain the root_uuid parameter: The hexdump tool may be missing in IPA: - WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str ... ok - WARNING [ironic_python_agent.numa_inspector] Failed to get list of NUMA nodes, NUMA node path does not exist: /sys/devices/system/node/ - WARNING [ironic_python_agent.inspector] no suitable root device detected - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided ... ERROR [ironic_python_agent.burnin] fio (disk) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure ... ironic-python-agent: /tmp/tmphc86crjw/etc/ironic-python-agent not found +ironic-python-agent: /tmp/tmphc86crjw/etc/ironic-python-agent.d not found +ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -4528,7 +3989,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -4542,7 +4003,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -4561,34 +4022,271 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail ... ok - WARNING [ironic_python_agent.utils] Ignoring malformed capability 'test:world:2'. Format should be 'key:val'. - WARNING [ironic_python_agent.utils] Ignoring malformed capability 'badformat'. Format should be 'key:val'. - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. - WARNING [ironic_python_agent.extensions.image] efibootmgr is not available in the ramdisk +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface ... ok + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success ... WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' +ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping + WARNING [root] Can't find field vendor for device sda in device class block + WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping + WARNING [root] Can't find field vendor for device sdb in device class block +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err ... ok +ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives +ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... ok + WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping + WARNING [root] Can't find field vendor for device md0 in device class block +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https ... ok +ironic-python-agent: No virtual media device detected + WARNING [ironic_python_agent.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_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid ... ok + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00919198989868164 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile ... ok + ERROR [root] Command failed: install_bootloader, error: meow +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader + _install_grub2(device, + File "", line 3, in _install_grub2 + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +OSError: meow +ironic-python-agent: Cannot use configuration from virtual media as the agent was not booted from virtual media. +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed ... ok + WARNING [ironic_python_agent.inspector] failed to get system journal +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed ... ok + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [ironic_python_agent.utils] failed to run hardware-detect utility: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger + ERROR [root] Command failed: power_off, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1041, in _run_shutdown_command + utils.execute("echo o > /proc/sysrq-trigger", shell=True) + File "", line 3, in execute + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off + self._run_shutdown_command('poweroff') + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command + raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) +ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory ... ok + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: + WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl ... ok + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002618074417114258 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: + WARNING [root] Something went wrong when readlink for interface eth2. Error: fake + ERROR [ironic_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0) +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald ... ok + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data ... ok + WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'} +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor +ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... ok + ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi ... ok + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok +/bin/sh: line 1: mkisofs: command not found +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid ... ok + ERROR [root] Command failed: power_off, error: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 825, in sync_clock + execute('ntpdate', CONF.ntp_server) + File "", line 3, in execute + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1096, in _sync_clock + utils.sync_clock(ignore_errors=ignore_errors) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 832, in sync_clock + raise errors.CommandExecutionError(msg) +ironic_python_agent.errors.CommandExecutionError: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off + self._run_shutdown_command('poweroff') + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1016, in _run_shutdown_command + self._sync_clock(ignore_errors=True) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1106, in _sync_clock + raise errors.ClockSyncError(msg) +ironic_python_agent.errors.ClockSyncError: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: + WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Response headers: ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -4648,7 +4346,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -4662,7 +4360,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -4681,82 +4379,113 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error - ERROR [root] Command failed: install_bootloader, error: -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader - _install_grub2(device, - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 167, in _install_grub2 - root_partition = partition_utils.get_partition(device, uuid=root_uuid) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/partition_utils.py", line 615, in get_partition - ipa_utils.rescan_device(device) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 921, in rescan_device - execute('partx', '-av', device, attempts=3, delay_on_retry=True) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 77, in execute - return ironic_utils.execute(*cmd, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in do_not_call - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -FileNotFoundError - WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope - WARNING [root] The root device was not detected in 27 seconds + WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! +/bin/sh: line 1: mkisofs: command not found +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve ... ok +ironic-python-agent: line 1. +ironic-python-agent: line 2 message +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices ... ok +ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching +ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 ... ok + ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None. + WARNING [ironic_python_agent.extensions.image] Unable to umount vfat partitions. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/dev. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/proc. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/run. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/sys. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 ... ok +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image ... ok WARNING [root] Can't find field vendor for device lo in device class net - WARNING [root] The root device was not detected in 45 seconds - ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version - response = self._request('GET', '/') - ^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request - resp = self.session.request(method, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in request - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -Exception: Boom -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -4816,7 +4545,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -4830,7 +4559,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -4849,86 +4578,149 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - ERROR [root] Unexpected exception performing service step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -RuntimeError: boom - ERROR [root] Command failed: execute_service_step, error: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -RuntimeError: boom - -During handling of the above exception, another exception occurred: - +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail ... ok + ERROR [root] Command failed: prepare_image, error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 88, in execute_service_step - raise errors.ServicingError(msg) -ironic_python_agent.errors.ServicingError: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps ... ok -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ... ok - WARNING [root] The root device was not detected in 27 seconds - WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! - ERROR [root] Error performing service step erase_devices + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 980, in prepare_image + _validate_partitioning(device) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 794, in _validate_partitioning + disk_utils.partprobe(device) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/disk_utils.py", line 665, in partprobe + utils.execute('partprobe', device, attempts=attempts) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/base.py", line 89, in do_not_call + raise Exception( +Exception: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration ... ok + ERROR [root] Tried to execute fake.fake_sync_command, agent is still executing Command name: name, params: {}, status: RUNNING, result: None. + ERROR [ironic_lib.exception] Exception in string format operation (arguments ) Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ - return self._mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call - raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - ERROR [root] Command failed: execute_service_step, error: Block device caused unknown error: I'm a teapot + File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ + message = self._msg_fmt % kwargs + ~~~~~~~~~~~~~~^~~~~~~~ +KeyError: 'service' +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args ... ok + WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait ... ok + WARNING [root] Can't find field vendor for device lo in device class net + WARNING [ironic_python_agent.agent] Ironic does not support automated TLS +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id ... ok + ERROR [root] Invalid content error: Invalid request body: baz Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in dispatch_to_managers + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command + result = ext.execute(command_part, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ return self._mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -4937,34 +4729,30 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger - ERROR [root] Command failed: run_image, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. +ironic_python_agent.errors.InvalidContentError: Invalid request body: baz +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed ... ok +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode +ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom ... ok + ERROR [root] Command execution error: Command execution failed: foo bar baz Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1043, in _run_shutdown_command - utils.execute("echo b > /proc/sysrq-trigger", shell=True) - File "", line 3, in execute + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command + result = ext.execute(command_part, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ return self._mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -4973,78 +4761,111 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - +ironic_python_agent.errors.CommandExecutionError: Command execution failed: foo bar baz +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present ... ok +ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering +ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering ... ok +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi ... ok +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone ... ok +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large ... ok +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps +ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels ... ok + ERROR [root] Extension do not found Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1051, in run_image - self._run_shutdown_command('reboot') - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command - raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) -ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. - WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 267, in execute_command + ext = self.get_extension(extension_part) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 238, in get_extension + ext = self.ext_mgr[extension_name].obj + ~~~~~~~~~~~~^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 340, in __getitem__ + return self._extensions_by_name[name] + ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^ +KeyError: 'do' +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt ... ok +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... ok ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ... ok - ERROR [root] Malformed service_step, no "step" key: {} - ERROR [root] Command failed: execute_service_step, error: Malformed service_step, no "step" key: {} -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 74, in execute_service_step - raise ValueError(msg) -ValueError: Malformed service_step, no "step" key: {} - ERROR [ironic_lib.exception] Exception in string format operation (arguments ) -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ - message = self._msg_fmt % kwargs - ~~~~~~~~~~~~~~^~~~~~~~ -KeyError: 'service' - WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ... ok - WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: - WARNING [root] Can't find field vendor for device lo in device class net - WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: '' -Stderr: None, falling back to sysrq-trigger -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError ... ok - WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger - WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'node_node': 'also_not_node'} - ERROR [root] Clean version mismatch for command execute_service_step +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config ... ok +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -5104,7 +4925,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -5118,7 +4939,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -5137,450 +4958,528 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) - WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - WARNING [ironic_python_agent.ironic_api_client] Failed looking up node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' at http://agent-api.ironic.example.org. Check if inspection has completed? Error 400: {"node": {"uuid": "deadbeef-dabb-ad00-b105-f00d00bab10c"}} -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition ... ok +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found ... WARNING [ironic_python_agent.agent] Ironic does not support automated TLS +ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/md/esp using the install command which does not place Secure Boot signed binaries. +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device ... ok + WARNING [ironic_python_agent.extensions.standby] Failed to call get_disk_identifier: Unable to obtain the root_uuid parameter: The hexdump tool may be missing in IPA: +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status ... ok + WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. +Command: grub2-install +Exit code: 1 +Stdout: '' +Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. + WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. +Command: grub2-install +Exit code: 1 +Stdout: '' +Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label ... ok ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... ok - WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'heartbeat_timeout': 300} -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor -ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config ... ok - WARNING [ironic_python_agent.ironic_api_client] Got invalid heartbeat from the API: {'node': {'uuid': 'deadbeef-dabb-ad00-b105-f00d00bab10c'}} -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token ... ok ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed ... ok +ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute +ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete ... ok +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... ok +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status ... ok +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing ... ok +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio ... ok + WARNING [root] Failed to remove partitions on /dev/sda: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'No md superblock detected' +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum ... ok + WARNING [root] Failed to remove partitions on /dev/sdb: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'No md superblock detected' +Stderr: None +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part ... ok ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override ... ok ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs ... ok - WARNING [ironic_python_agent.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_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured ... ok +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + ERROR [root] Unable to clean all softraid correctly. Remaining ['/dev/md0'] +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral ... ok +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks ... ok - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger +ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image ... ok +ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys +ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card ... ok +ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs +ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode -ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps -ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy ... ok ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label ... ok - ERROR [ironic_lib.exception] Exception in string format operation (arguments ) +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content ERROR [ironic_lib.exception] Exception in string format operation (arguments ) Traceback (most recent call last): File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ message = self._msg_fmt % kwargs ~~~~~~~~~~~~~~^~~~~~~~ KeyError: 'service' + ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected ... ok +POST: /v1/commands {'name': 'do_things', 'params': []} +GOT: +POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands {} +GOT: +POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} +GOT: +POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} +GOT: +GET: /v1/status None +GOT: +GET: /v1/commands/abc123 None +GOT: +GET: /v1/commands None +GOT: +GET: /v1/foo None +GOT: +GET: / None +GOT: +GET: /v1 None +GOT: +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme ... ok WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat - WARNING [root] Can't find field vendor for device lo in device class net - ERROR [ironic_python_agent.agent] Neither ipa-api-url nor inspection_callback_urlfound, please check your pxe append parameters. - WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data ... ok -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on ... ok -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError ... ok + WARNING [root] RAID device /dev/md1 will not be deleted +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed ... ok + WARNING [root] Software RAID device /dev/md1 is not going to be deleted as its volume name - small - is on the skip list + WARNING [root] Software RAID device /dev/md1 was not deleted +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes ... ok + WARNING [root] Holder disk /dev/sda contains logical disk on the skip list. Deleting just partitions: ['1'] +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string ... ok + WARNING [root] Holder disk /dev/sdb contains logical disk on the skip list. Deleting just partitions: ['1'] +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_ssl ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_ssl ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures ... ok -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi WARNING [root] Can't find field vendor for device lo in device class net + ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt ... ok + ERROR [ironic_python_agent.agent] Neither ipa-api-url nor inspection_callback_urlfound, please check your pxe append parameters. +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition ... ok + WARNING [ironic_python_agent.agent] Ironic does not support automated TLS +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails ... WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. +ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_without_inspection_and_apiurl ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_without_inspection_and_apiurl ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints ... ok WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Can't find field vendor for device sda in device class block - WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - WARNING [root] Can't find field vendor for device sdb in device class block - WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping - WARNING [root] Can't find field vendor for device md0 in device class block -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical ... ok - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list ... ok + WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist ... ok +ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls +ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running ... ok + ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. Command: None -Exit code: 16 -Stdout: 'Connection timeout' -Stderr: None - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Exit code: - +Stdout: 'error' +Stderr: None. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails ... ok + WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: Unexpected error while running command. Command: None -Exit code: 16 -Stdout: 'Connection timeout' +Exit code: - +Stdout: 'lacking kernel support' Stderr: None - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only ... ok + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: An unknown error occurred erasing block device /dev/sda +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false ... ok + ERROR [root] Failed to create config drive on disk /dev/fake for node 12345678-1234-1234-1234-1234567890abcxyz. Error: Unexpected error while running command. Command: None -Exit code: 16 -Stdout: 'Connection refused' +Exit code: - +Stdout: None Stderr: None -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -5640,7 +5539,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -5654,7 +5553,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -5673,63 +5572,122 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 ... ok + WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails ... ok + WARNING [root] Failed to invoke secure erase, falling back to shred: Error erasing block device: An unknown error occurred erasing block device /dev/sda ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default ... ok - ERROR [ironic_python_agent.burnin] stress-ng (cpu) failed with error Unexpected error while running command. +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' + WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: None -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list ... ok + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger + ERROR [root] Command failed: run_image, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1043, in _run_shutdown_command + utils.execute("echo b > /proc/sysrq-trigger", shell=True) + File "", line 3, in execute + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1051, in run_image + self._run_shutdown_command('reboot') + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command + raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) +ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda is frozen and cannot be erased +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found ... ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... ok + WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails ... ok + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda already has a security password set +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -5789,7 +5747,7 @@ ^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -5803,7 +5761,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -5822,207 +5780,138 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default ... ok - ERROR [ironic_python_agent.burnin] stress-ng (vm) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_explicitly ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_explicitly ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng ... ok -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct ... ok -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 ... ok -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ... ok - ERROR [ironic_python_agent.inspector] inspector url error 400: , proceeding with lookup -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback ... ok - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed ... ok -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme ... ok - WARNING [root] Failed to remove partitions on /dev/sda: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'No md superblock detected' -Stderr: None - WARNING [root] Failed to remove partitions on /dev/sdb: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'No md superblock detected' -Stderr: None - ERROR [root] Failed to create config drive on disk /dev/fake for node 12345678-1234-1234-1234-1234567890abcxyz. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv ... ok - ERROR [root] Unable to clean all softraid correctly. Remaining ['/dev/md0'] -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception ... ok - WARNING [ironic_python_agent.ironic_api_client] Connection error when accessing 2001:db8::1/v1/heartbeat/meow, trying the next URL. Error: -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders ... ok - WARNING [root] RAID device /dev/md1 will not be deleted - WARNING [root] Software RAID device /dev/md1 is not going to be deleted as its volume name - small - is on the skip list - WARNING [root] Software RAID device /dev/md1 was not deleted - WARNING [root] Holder disk /dev/sda contains logical disk on the skip list. Deleting just partitions: ['1'] - WARNING [root] Holder disk /dev/sdb contains logical disk on the skip list. Deleting just partitions: ['1'] -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders ... ok - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: An unknown error occurred erasing block device /dev/sda -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed ... ok - WARNING [root] Failed to invoke secure erase, falling back to shred: Error erasing block device: An unknown error occurred erasing block device /dev/sda -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued ... ok - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda is frozen and cannot be erased -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 ... ok - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda already has a security password set -ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: usb -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader ... ok + ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3468, in dispatch_to_all_managers + response = getattr(manager, method)(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper + return fn(self, *args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail + raise RuntimeError('A problem was encountered') +RuntimeError: A problem was encountered ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... ok - ERROR [root] Finding the partition with UUID 11111111-2222-3333-4444-555555555555 on device /dev/fake failed with Unexpected error while running command. +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid ... ok + WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. Command: None Exit code: - -Stdout: 'boom' -Stderr: None +Stdout: '' +Stderr: None, falling back to sysrq-trigger +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... ok + WARNING [root] No hardware manager was able to handle interface foobar +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces ... ok + WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq ... ok + WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 7: 0b0/0b0 + WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 0: 0b0/0b1111 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success ... ok -ironic-python-agent: Excluding device sdh1 from virtual mediaconsideration as it is a partition. +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks ... ok + WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed + WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed + WARNING [ironic_python_agent.extensions.image] Failed to copy grubenv file. Error: copy failed +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails ... ok + WARNING [root] Cannot find detailed information about interface eth0 WARNING [root] Unable to execute `smartctl` utility: boom -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device ... ok + WARNING [root] Cannot find detailed information about interface bond0 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred ... ok - ERROR [root] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_crypto_success ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_crypto_success ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... ok -ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: sata -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata ... ok -ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: scsi + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only ... ok + WARNING [root] Cannot find detailed information about interface eth0 ERROR [root] nvme-cli did not return any supported format modes for device: /dev/nvme0n1 -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported ... ok + WARNING [root] Cannot find detailed information about interface eth0 + WARNING [root] Cannot find detailed information about interface eth0.100 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + WARNING [root] Cannot find detailed information about interface eth0 + WARNING [root] Cannot find detailed information about interface eth0.100 + WARNING [root] Cannot find detailed information about interface eth0.101 +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found ... ok ERROR [root] Erasing block device /dev/sda failed with error -ironic-python-agent: Device sdh appears to not qualify as virtual due to the device size. Size: 1610612736000 -ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: usb ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large ... ok + WARNING [root] Cannot find detailed information about interface eth0 + WARNING [root] Cannot find detailed information about interface eth1 + WARNING [root] Cannot find detailed information about interface eth0.100 + WARNING [root] Cannot find detailed information about interface eth0.101 + WARNING [root] Cannot find detailed information about interface eth1.102 + WARNING [root] Cannot find detailed information about interface eth1.103 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 ... ok ERROR [root] Erasing block device /dev/sda failed with error Unexpected error while running command. Command: None Exit code: - @@ -6030,27 +5919,149 @@ Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe ... ok + ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3512, in dispatch_to_managers + return getattr(manager, method)(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper + return fn(self, *args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail + raise RuntimeError('A problem was encountered') +RuntimeError: A problem was encountered +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info ... ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'error' +Stderr: None. + ERROR [ironic_python_agent.extensions.image] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'error' +Stderr: None + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all ... ok WARNING [root] Refusing to permit ATA Secure Erase as direct ATA commands via the `smartctl` utility with device /dev/sda do not succeed. ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_virtual_media ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_virtual_media ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. + WARNING [ironic_python_agent.extensions.image] efibootmgr is not available in the ramdisk + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error + ERROR [root] Command failed: install_bootloader, error: +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader + _install_grub2(device, + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 167, in _install_grub2 + root_partition = partition_utils.get_partition(device, uuid=root_uuid) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/partition_utils.py", line 615, in get_partition + ipa_utils.rescan_device(device) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 921, in rescan_device + execute('partx', '-av', device, attempts=3, delay_on_retry=True) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 77, in execute + return ironic_utils.execute(*cmd, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in do_not_call + File "/usr/lib/python3.12/unittest/mock.py", line 1139, in __call__ + return self._mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1143, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.12/unittest/mock.py", line 1198, in _execute_mock_call + raise effect +FileNotFoundError +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found +ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found ... ok + ERROR [root] Encountered issue attempting to validate the supplied configuration drive. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp40dr_dtb/tmpzdjhrk_7, error: [Errno 21] Is a directory: '/tmp/tmp40dr_dtb/tmpzdjhrk_7' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi ... ok + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpqq_qwd9n/tmpf1z4vht6, error: [Errno 21] Is a directory: '/tmp/tmpqq_qwd9n/tmpf1z4vht6' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid ... ok + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpp_vi23ah/tmpec279tsz, error: [Errno 21] Is a directory: '/tmp/tmpp_vi23ah/tmpec279tsz' + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpp_vi23ah/tmpofcef4yg, error: [Errno 21] Is a directory: '/tmp/tmpp_vi23ah/tmpofcef4yg' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive ... ok + ERROR [root] We were unable to make a new filesystem for the configuration drive. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpzte23_p5/tmpdoeadhn1, error: [Errno 21] Is a directory: '/tmp/tmpzte23_p5/tmpdoeadhn1' + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpzte23_p5/tmpw7wjqmqt, error: [Errno 21] Is a directory: '/tmp/tmpzte23_p5/tmpw7wjqmqt' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid ... ok + WARNING [root] We were unable to examine the configuration drive, bypassing. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency_pool_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency_pool_size ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express_stops_on_safety_failure ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express_stops_on_safety_failure ... ok - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata ... ok ERROR [root] Failed to erase the metadata on device "/dev/sdb". Error: Unexpected error while running command. @@ -6062,23 +6073,10 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_safety_check ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_safety_check ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found ... ok - ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3468, in dispatch_to_all_managers - response = getattr(manager, method)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper - return fn(self, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail - raise RuntimeError('A problem was encountered') -RuntimeError: A problem was encountered -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default_protected_device @@ -6087,17 +6085,13 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_without_disk ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_pstore ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_pstore ... ok - WARNING [root] Executable 'biosdevname' not found ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_ok ... ok + WARNING [root] Executable 'biosdevname' not found ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_oserror ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_oserror ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err3 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err3 ... ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err4 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err4 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address @@ -6122,8 +6116,6 @@ WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_not_available ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_not_available ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_random_error ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_random_error ... ok WARNING [root] Cannot get BMC address: Unexpected error while running command. @@ -6135,8 +6127,8 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_virt ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_zeroed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_zeroed ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only ... ok +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_invalid @@ -6144,6 +6136,8 @@ WARNING [root] Invalid ipmitool output meow ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_iterate_channels ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_iterate_channels ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device ... ok WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output @@ -6155,10 +6149,6 @@ WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_not_available ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_not_available ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_random_error @@ -6168,100 +6158,26 @@ Exit code: - Stdout: None Stderr: None - ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3512, in dispatch_to_managers - return getattr(manager, method)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper - return fn(self, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail - raise RuntimeError('A problem was encountered') -RuntimeError: A problem was encountered -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails ... ok -ironic-python-agent: Copying configuration from /tmp/tmp7e82wqiv/etc/ironic-python-agent to /etc/ironic-python-agent -ironic-python-agent: Copying configuration from /tmp/tmp7e82wqiv/etc/ironic-python-agent.d to /etc/ironic-python-agent.d ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_virt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_virt ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy ... ok -ironic-python-agent: Copying configuration from /tmp/tmpr_i3wz96/etc/ironic-python-agent to /etc/ironic-python-agent -ironic-python-agent: Copying configuration from /tmp/tmpr_i3wz96/etc/ironic-python-agent.d to /etc/ironic-python-agent.d ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_zeroed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_zeroed ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted ... ok -ironic-python-agent: /some/path/etc/ironic-python-agent not found -ironic-python-agent: /some/path/etc/ironic-python-agent.d not found - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout ... ok -ironic-python-agent: /tmp/tmpt5dpjo9k/etc/ironic-python-agent not found -ironic-python-agent: /tmp/tmpt5dpjo9k/etc/ironic-python-agent.d not found -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files ... ok -ironic-python-agent: No virtual media device detected ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_channel_7 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_channel_7 ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia ... ok -ironic-python-agent: Cannot use configuration from virtual media as the agent was not booted from virtual media. - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_dynamic_address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_dynamic_address ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_enables ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_enables ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync ... ok - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_get_address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_get_address ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_ipmitool_invalid_stdout_format ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_ipmitool_invalid_stdout_format ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_no_ipmi_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_no_ipmi_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_not_enabled ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_not_enabled ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_static_address_both ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_static_address_both ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo ... ok WARNING [root] Cannot get BMC v6 address: Unexpected error while running command. Command: None Exit code: - @@ -6269,116 +6185,51 @@ Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_virt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_virt ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_bios ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_bios ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_pxe_interface ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_pxe_interface ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_uefi ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_uefi ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_clean_steps ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_clean_steps ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 ... ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_component_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_component_devices ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_illegal_flags ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_illegal_flags ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_and_flag_fallback ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_and_flag_fallback ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_flag_fallback ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_flag_fallback ... ok - ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently algo-beyond-milky-way) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used ... ok - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure ... ok - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-sha512-value; verification checksum: invalid-checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ... ok - ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently unsupported-algorithm) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_no_flags ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_no_flags ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_broken_raid0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_broken_raid0 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_poisoned_output ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_poisoned_output ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_unexpected_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_unexpected_devices ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_nvme ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_nvme ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails ... ok + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_whole_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_whole_device ... ok - ERROR [ironic_lib.exception] Exception in string format operation (arguments ) -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ - message = self._msg_fmt % kwargs - ~~~~~~~~~~~~~~^~~~~~~~ -KeyError: 'reason' -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_arm64_lshw ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_arm64_lshw ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! WARNING [root] Could not get real physical RAM from lshw: -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_exception ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_exception ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_list ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_bank_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_bank_size ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi ... ok ERROR [root] Cannot fetch total memory size using psutil version 5 Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 1648, in get_memory @@ -6396,8 +6247,6 @@ AttributeError ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v1 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v1 ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception ... ok ERROR [root] Cannot fetch total memory size using psutil version 5 Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 1648, in get_memory @@ -6431,7 +6280,7 @@ WARNING [root] Can't find field vendor for device dm-0 in device class block ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device ... ok - WARNING [root] Using hint {'vendor': 'basic vendor'} skipping devices: /dev/sdb,/dev/sda + WARNING [root] Using hint {'vendor': 'basic vendor'} skipping devices: /dev/sda,/dev/sdb ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_complete_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_complete_skip_list ... ok WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' @@ -6490,8 +6339,6 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_model ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_name ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_name ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries ... ok WARNING [ironic_lib.utils] No device found that matches the root device hints {'model': 'fastable sd131 7', 'wwn': 'fake-wwn', 'serial': 'fake-serial', 'vendor': 'fake-vendor', 'size': 10} ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_no_device_found ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_no_device_found ... ok @@ -6501,8 +6348,6 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_serial ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size ... ok -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_not_int ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_not_int ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_str @@ -6632,52 +6477,269 @@ WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping WARNING [root] Can't find field vendor for device md0 in device class block -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1_raidN ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1_raidN ... ok -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder ... ok -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib ... ok -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable ... ok -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector ... ok -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 ... skipped 'mkisofs not installed' -ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found -ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum ... ok -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 ... skipped 'mkisofs not installed' -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls ... ok +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok + WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure ... ok + WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs ... ok + WARNING [ironic_python_agent.numa_inspector] Failed to get list of NUMA nodes, NUMA node path does not exist: /sys/devices/system/node/ +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success ... ok + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd ... ok + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync ... ok + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user ... ok + ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently algo-beyond-milky-way) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used ... ok + ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure ... ok + ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-sha512-value; verification checksum: invalid-checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields ... ok + ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently unsupported-algorithm) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails ... ok + ERROR [ironic_lib.exception] Exception in string format operation (arguments ) +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ + message = self._msg_fmt % kwargs + ~~~~~~~~~~~~~~^~~~~~~~ +KeyError: 'reason' +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images ... ok + ERROR [root] Duplicate componentFlavor MT_0000000540 +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema ... ok + ERROR [root] Invalid parameters for image {'url': 'http://10.10.10.10/firmware_images/fw2.bin', 'checksum': 'a94e683ea16d9ae44768f0a65942234c', 'checksumType': 'sha512', 'component': 'MT_0000000652', 'version': '24.34.1002'},please provide the following parameters url, checksum, checksumType, componentFlavor, version +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter ... ok + ERROR [ironic_python_agent.utils] collector failed: boom +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled ... ok + ERROR [ironic_python_agent.utils] boom +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url ... ok ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 ... ok - WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 7: 0b0/0b0 - WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 0: 0b0/0b1111 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config ... ok + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader ... ok + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection timeout' +Stderr: None + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection timeout' +Stderr: None + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection refused' +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk ... ok + ERROR [ironic_python_agent.burnin] stress-ng (cpu) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default ... ok +5+0 records in +5+0 records out +5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.0194099 s, 270 MB/s +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default ... ok + ERROR [ironic_python_agent.burnin] stress-ng (vm) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true ... ok + ERROR [ironic_python_agent.utils] foo + ERROR [ironic_python_agent.utils] bar + ERROR [ironic_python_agent.utils] baz + ERROR [ironic_python_agent.utils] foo +ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error +ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error ... ok +ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise +ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise ... ok ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed ... ok WARNING [ironic_python_agent.inspector] Connection error when accessing url1, trying the next URL. Error: -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid ... ok ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls ... ok ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_ok @@ -6689,40 +6751,18 @@ WARNING [ironic_python_agent.inspector] Connection error when accessing http://url1/v1/continue_inspection, trying the next URL. Error: ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks ... ok - ERROR [ironic_python_agent.utils] failed to run hardware-detect utility: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks ... ok - ERROR [ironic_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0) -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid ... ok -ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute -ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk ... ok -5+0 records in -5+0 records out -5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.472207 s, 11.1 MB/s +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info ... ok + WARNING [ironic_python_agent.inspector] no suitable root device detected +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit ... ok 5+0 records in 5+0 records out -5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.120877 s, 43.4 MB/s +5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.019211 s, 273 MB/s ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized ... ok ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location @@ -6746,92 +6786,57 @@ ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid_type ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_stream_optimized ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_stream_optimized ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid ... ok + WARNING [ironic_python_agent.inspector] Failed to gather vendor id, product id or pci class from PCI device bar: + WARNING [ironic_python_agent.inspector] Wrong format of vendor id, product id or pci class in PCI device baz: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success ... ok + WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device foo: + WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device bar: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror ... ok + ERROR [ironic_python_agent.utils] Failed to get list of PCI devices: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path ... ok ---------------------------------------------------------------------- -Ran 1023 tests in 158.661s +Ran 1023 tests in 21.618s OK (skipped=5) + stestr slowest Test id Runtime (s) --------------------------------------------------------------------------------------------------------------------------------- ----------- -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit 49.407 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized 42.529 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx 16.754 -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries 4.030 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk 3.975 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_stream_optimized 3.423 -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st 3.286 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout 3.279 -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout 2.119 -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error 2.065 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized 4.711 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit 4.487 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx 4.347 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries 4.015 +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st 3.035 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout 3.028 +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout 2.020 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error 2.013 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed 2.011 +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run 1.100 + rm -rf .stestr -+ [ 3.13 = disabled ] -+ cut -d. -f1 -+ echo 3.13 ++ for pyvers in ${PYTHON3S} ++ '[' 3.13 = disabled ']' +++ echo 3.13 +++ cut -d. -f1 + PYMAJOR=3 -+ echo ===> Testing with python (python3) ++ echo '===> Testing with python (python3)' ===> Testing with python (python3) -+ pwd -+ [ -d /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ] -+ [ -z /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ] -+ [ -e .stestr.conf ] -+ [ -x /usr/bin/python3-stestr ] +++ pwd ++ '[' -d /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ']' ++ '[' -z /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages ']' ++ '[' -e .stestr.conf ']' ++ '[' -x /usr/bin/python3-stestr ']' + STESTR=stestr + rm -rf .stestr ++ PYTHON=python3.13 ++ stestr run --parallel --subunit 'ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout)' + subunit2pyunit -+ PYTHON=python3.13 stestr run --parallel --subunit ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout) -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing ... ok - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success ... ok - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success ... ok - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md1. Skipping -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid ... ok -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type -ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type ... ok - ERROR [ironic_python_agent.inspector] inspector url error 400: , proceeding with lookup -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... ok -ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs -ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset ... ok ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output ... ok ERROR [root] Unexpected exception performing clean step erase_devices. RuntimeError: boom Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step @@ -6873,12 +6878,6 @@ ironic_python_agent.errors.CleaningError: Clean step failed: Unexpected exception performing clean step erase_devices. RuntimeError: boom ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw ... ok ERROR [root] Error performing clean step erase_devices Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 77, in execute_clean_step @@ -6894,8 +6893,10 @@ File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call raise effect ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok ERROR [root] Command failed: execute_clean_step, error: Block device caused unknown error: I'm a teapot Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run @@ -6915,138 +6916,1474 @@ ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_fail ... ok -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx WARNING [root] Something went wrong when readlink for interface eth2. Error: fake - ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once +ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok ERROR [root] Malformed clean_step, no "step" key: {} -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver ERROR [root] Command failed: execute_clean_step, error: Malformed clean_step, no "step" key: {} + ERROR [root] Command failed: execute_clean_step, error: Malformed clean_step, no "step" key: {} Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/clean.py", line 74, in execute_clean_step raise ValueError(msg) ValueError: Malformed clean_step, no "step" key: {} - ... ok -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_no_step ... ok -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute -ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file ... ok + ERROR [root] Failed to move file: /firmware_images/fw1.bin, +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found ... ok + ERROR [ironic_python_agent.utils] failed to run hardware-detect utility: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_tuple_result ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http ... ok + ERROR [ironic_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0) +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed +ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed ... ok + ERROR [root] Failed to open URL data: HTTP Error 500: Internal Error + ERROR [root] Clean version mismatch for command execute_clean_step +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_gpt ... ok + ERROR [root] Failed to open URL data: +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok + WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown +ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results ERROR [root] Mismatch provided checksum a94e683ea16d9ae44768f0a65942234d for image http://10.10.10.10/firmware_images/fw1.bin + ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware ... ok +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps +ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_error ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum ... ok + ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228 + ERROR [root] The provided firmware version 20.34.1012 does not match image firmware version 20.35.1012 + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boop' +Stderr: None +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_detect_hardware_no_mlnx ... ok +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled ... ok +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk +ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" + WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi ... ok +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises +ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises ... ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_evaluate_hardware_support_no_mlnx ... ok - WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock ... ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_generate_client_id ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... ok +ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev +ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted ... ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_clean_steps ... ok - ERROR [root] Clean version mismatch for command execute_clean_step -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown -ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_version_mismatch ... ok - WARNING [ironic_python_agent.dmi_inspector] Failed to parse Handle type in dmi output: list index out of range +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records ... ok +ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs +ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs ... WARNING [ironic_python_agent.efi_utils] Empty EFI partition detected. +ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq ... ok - ERROR [root] Failed Prerequisite check. Unexpected error while running command. +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve ... ok + ERROR [root] Command failed: sleep, error: An error occurred: An unexpected error occurred. Please try back later. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep + time.sleep(sleep_info['time']) + ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +ironic_python_agent.errors.RESTError: An error occurred: An unexpected error occurred. Please try back later. + ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow + raise errors.CommandExecutionError( + "%s was failed" % method + ) +ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path ... ok +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface +ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories ... ok + ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. Command: None Exit code: - -Stdout: None +Stdout: 'boom' Stderr: None -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface -ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_ib_interface ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step_with_args ... ok - ERROR [ironic_python_agent.utils] failed to run dmidecode: Unexpected error while running command. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 131, in manage_uefi + utils.execute('mount', efi_partition, efi_partition_mount_point) + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in execute + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. Command: None Exit code: - -Stdout: None +Stdout: 'boom' Stderr: None -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception ... ok + ERROR [root] Command failed: sleep, error: foo +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep + time.sleep(sleep_info['time']) + ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call + raise result +Exception: foo +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi ... ok + ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow + raise errors.CommandExecutionError( + "%s was failed" % method + ) +ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mac_address ... ok -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps -ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_get_clean_steps ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_add_partition ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... ok + ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info ... ok + ERROR [ironic_python_agent.disk_utils] Security: Image failed safety check +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command ... ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_get_interface_info_no_mlnx_interface ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check ... ok +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass +ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass ... ok +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields +ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields ... ok ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac ironic_python_agent.tests.unit.hardware_managers.test_mlnx.MlnxHardwareManager.test_infiniband_address_to_mac ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu ... ok - ERROR [root] Command failed: fake_async_command, error: An error occurred: failed +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok +ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching +ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok + ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 185, in manage_uefi + _run_efibootmgr(valid_efi_bootloaders, efi_dev, efi_part, + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + efi_partition_mount_point) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 351, in _run_efibootmgr + boot_records = list(get_boot_records()) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 282, in get_boot_records + efi_output = utils.execute('efibootmgr', '-v', binary=True) + File "", line 3, in execute + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call + raise result +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success ... ok + ERROR [ironic_python_agent.efi_utils] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'no umount' +Stderr: None +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0003085136413574219 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0003085136413574219 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004351377487182617 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.004351377487182617 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info +ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004988431930541992 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.004988431930541992 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005553483963012695 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.005553483963012695 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006015777587890625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device +ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006015777587890625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006538867950439453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006538867950439453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007031917572021484 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007031917572021484 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007505893707275391 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007505893707275391 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007945060729980469 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007945060729980469 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008412361145019531 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.efi_utils] Invalid sgdisk line: I am a teaport + WARNING [ironic_python_agent.efi_utils] No UUID information provided in sgdisk output for partition 1 on device /dev/fake +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential ... ok +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald ... ok + ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 185, in manage_uefi + _run_efibootmgr(valid_efi_bootloaders, efi_dev, efi_part, + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + efi_partition_mount_point) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 351, in _run_efibootmgr + boot_records = list(get_boot_records()) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 282, in get_boot_records + efi_output = utils.execute('efibootmgr', '-v', binary=True) + File "", line 3, in execute + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call + raise result +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0002219676971435547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0002219676971435547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0008623600006103516 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0008623600006103516 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003901243209838867 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.003901243209838867 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004425764083862305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.004425764083862305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004887580871582031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.004887580871582031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005347728729248047 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.005347728729248047 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0057981014251708984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0057981014251708984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006262302398681641 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006262302398681641 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01070404052734375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01070404052734375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.011287689208984375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success +ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00019884109497070312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00019884109497070312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0008392333984375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0008392333984375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0015549659729003906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0015549659729003906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0053517818450927734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__check_for_iscsi_no_iscsi ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0053517818450927734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005888462066650391 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.005888462066650391 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006353616714477539 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006353616714477539 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006831169128417969 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006831169128417969 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile +ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007361888885498047 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007361888885498047 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007803678512573242 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007803678512573242 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008252859115600586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor +ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test__load_ipmi_modules ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0002720355987548828 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0002720355987548828 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.007460594177246094 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.007460594177246094 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00794076919555664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00794076919555664 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008409738540649414 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008409738540649414 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.008954763412475586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.008954763412475586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009425640106201172 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009425640106201172 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config +ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs +ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009884357452392578 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009884357452392578 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.010401487350463867 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.010401487350463867 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0108795166015625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0108795166015625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01136159896850586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config + WARNING [ironic_python_agent.utils] Ignoring malformed capability 'test:world:2'. Format should be 'key:val'. + WARNING [ironic_python_agent.utils] Ignoring malformed capability 'badformat'. Format should be 'key:val'. +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps +ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_missing ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test__query_device ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005747556686401367 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.005747556686401367 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.006649017333984375 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.006649017333984375 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.013649225234985352 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.013649225234985352 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.014426469802856445 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.014426469802856445 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.015087366104125977 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.015087366104125977 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.015717506408691406 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.015717506408691406 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.016347408294677734 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.016347408294677734 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01695847511291504 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + ERROR [ironic_python_agent.burnin] SMART test on /dev/sdj failed with 'string' + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01695847511291504 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed ... ok + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.021527528762817383 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.021527528762817383 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.022408723831176758 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_fw_update_if_needed_with_reset ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_get_nic_psid ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_partuuid_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_is_image_changed_true ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units ... ok +ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls +ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options +ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_no_data ... ok +ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys +ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareOps.test_parse_mstflint_query_output_with_running_fw ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort ... ok + ERROR [ironic_python_agent.utils] foo + ERROR [ironic_python_agent.utils] bar + ERROR [ironic_python_agent.utils] baz + ERROR [ironic_python_agent.utils] foo +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info ... ok + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md1. Skipping +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok +ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error +ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort +ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort ... ok + ERROR [ironic_python_agent.burnin] fio (disk) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success ... ok +ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise +ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise ... ok + ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve + return _proxy.query(name, rdtype, raise_on_no_answer=raises, + ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + use_network=use_network) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 407, in query + step(self._resolver.query, qname, rdtype, rdclass, tcp, source, raise_on_no_answer=False) + ^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 347, in _resolver + self.clear() + ~~~~~~~~~~^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 355, in clear + self._resolver = dns.resolver.Resolver(filename=self._filename) + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/dns/resolver.py", line 945, in __init__ + self.read_resolv_conf(filename) + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/dns/resolver.py", line 1039, in read_resolv_conf + raise NoResolverConfiguration("no nameservers") +dns.resolver.NoResolverConfiguration: no nameservers + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 198, in _new_conn + sock = connection.create_connection( + (self._dns_host, self.port), + ...<2 lines>... + socket_options=self.socket_options, + ) + File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 60, in create_connection + for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): + ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 558, in getaddrinfo + qname, addrs = _getaddrinfo_lookup(host, family, flags) + ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 529, in _getaddrinfo_lookup + raise err + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 518, in _getaddrinfo_lookup + answer = resolve(host, qfamily, False, use_network=use_network) + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 473, in resolve + _raise_new_error(EAI_NODATA_ERROR) + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 100, in _raise_new_error + raise error_instance.__class__(*error_instance.args) +socket.gaierror: [Errno -2] Name or service not known + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 787, in urlopen + response = self._make_request( + conn, + ...<10 lines>... + **response_kw, + ) + File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 488, in _make_request + raise new_e + File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 464, in _make_request + self._validate_conn(conn) + ~~~~~~~~~~~~~~~~~~~^^^^^^ + File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1093, in _validate_conn + conn.connect() + ~~~~~~~~~~~~^^ + File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 704, in connect + self.sock = sock = self._new_conn() + ~~~~~~~~~~~~~~^^ + File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn + raise NameResolutionError(self.host, self, e) from e +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/requests/adapters.py", line 667, in send + resp = conn.urlopen( + method=request.method, + ...<9 lines>... + chunked=chunked, + ) + File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 841, in urlopen + retries = retries.increment( + method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2] + ) + File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment + raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version + response = self._request('GET', '/') + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request + resp = self.session.request(method, + request_url, + ...<4 lines>... + timeout=CONF.http_request_timeout, + **kwargs) + File "/usr/lib/python3/dist-packages/requests/sessions.py", line 589, in request + resp = self.send(prep, **send_kwargs) + File "/usr/lib/python3/dist-packages/requests/sessions.py", line 703, in send + r = adapter.send(request, **kwargs) + File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send + raise ConnectionError(e, request=request) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) + WARNING [ironic_python_agent.agent] Ironic does not support automated TLS + ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid ... ok +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_success_raid ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image ... ok + ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type +ironic_python_agent.tests.unit.test_hardware.TestModuleFunctions.test_list_all_block_devices_wrong_block_type ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia +ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode +ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ... ok + ERROR [ironic_python_agent.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_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 ... ok + ERROR [ironic_python_agent.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_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled +ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk +ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... ok +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works +ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal +ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false +ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdateNvidiaNicFirmwareImage.test_update_nvidia_nic_firmware_image_exception ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps +ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device ... ok + ERROR [root] Failed to create config drive on disk /dev/fake for node 12345678-1234-1234-1234-1234567890abcxyz. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found +ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmpjilotku_/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum + ... ok + WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found +ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none ... ok +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail +ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail ... ok + WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only ... ok +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true +ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi ... ok +ironic-python-agent: Copying configuration from /tmp/tmpxjd5mjma/etc/ironic-python-agent to /etc/ironic-python-agent +ironic-python-agent: Copying configuration from /tmp/tmpxjd5mjma/etc/ironic-python-agent.d to /etc/ironic-python-agent.d +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed ... ok + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt ... ok +ironic-python-agent: Copying configuration from /tmp/tmpif3_umb1/etc/ironic-python-agent to /etc/ironic-python-agent +ironic-python-agent: Copying configuration from /tmp/tmpif3_umb1/etc/ironic-python-agent.d to /etc/ironic-python-agent.d +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestUpdatenvidiaNicFirmwareSettings.test_update_nvidia_nic_firmware_settings_exception ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none ... ok + WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text +ironic-python-agent: /some/path/etc/ironic-python-agent not found +ironic-python-agent: /some/path/etc/ironic-python-agent.d not found +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', ), ('eth1', )] + ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 ... ok +ironic-python-agent: /tmp/tmpq_4mbzqa/etc/ironic-python-agent not found +ironic-python-agent: /tmp/tmpq_4mbzqa/etc/ironic-python-agent.d not found +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files ... ok + ERROR [ironic_python_agent.inspector] inspector url error 400: , proceeding with lookup +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... ok + WARNING [ironic_python_agent.agent] Cannot get route to host fc00:1111::1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number ... ok + WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text +ironic-python-agent: No virtual media device detected +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait ... ok + WARNING [ironic_python_agent.agent] Cannot get route to host fc00:1111::1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic-python-agent: Cannot use configuration from virtual media as the agent was not booted from virtual media. +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format ... ok +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label +ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme ... ok +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia +ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait ... ok + WARNING [ironic_python_agent.netutils] Trailing byte received in an LLDP package: b'5' +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist ... ok + ERROR [root] Failed Prerequisite check. Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file ... ok +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit ... ok +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError ... ok + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait ... ok +ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute +ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card ... ok + ERROR [root] Command failed: power_off, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1041, in _run_shutdown_command + utils.execute("echo o > /proc/sysrq-trigger", shell=True) + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in execute + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command - raise ExecutionError() -ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_disconnected ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name ... ok + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off + self._run_shutdown_command('poweroff') + ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command + raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) +ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path +ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path ... ok + WARNING [root] Something went wrong when readlink for interface eth2. Error: fake ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details +ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders ... ok +/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:57: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_before_utc. + self.assertLess(cert.not_valid_before, +/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:59: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_after_utc. + self.assertGreater(cert.not_valid_after, + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0011038780212402344 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: + WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', )] + ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum ... ok + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: + ERROR [root] Command failed: power_off, error: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 825, in sync_clock + execute('ntpdate', CONF.ntp_server) + ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in execute + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1096, in _sync_clock + utils.sync_clock(ignore_errors=ignore_errors) + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 832, in sync_clock + raise errors.CommandExecutionError(msg) +ironic_python_agent.errors.CommandExecutionError: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off + self._run_shutdown_command('poweroff') + ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1016, in _run_shutdown_command + self._sync_clock(ignore_errors=True) + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1106, in _sync_clock + raise errors.ClockSyncError(msg) +ironic_python_agent.errors.ClockSyncError: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [root] Can't find field vendor for device lo in device class net + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: + WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003393888473510742 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... ok + ERROR [root] Duplicate componentFlavor MT_0000000540 ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_correct_gpt_nvme ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv ... ok +ironic-python-agent: Excluding device sda1 from virtual mediaconsideration as it is a partition. +ironic-python-agent: Found possible vmedia candidate /dev/sda2, however the device failed vmedia validity checking. + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: + WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Response headers: ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ... ok - ERROR [root] Failed to query firmware of device : Unexpected error while running command. +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt +ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ... ok +ironic-python-agent: Was unable to execute the lsblk command. Unexpected error while running command. Command: None Exit code: - Stdout: None Stderr: None -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data ... ok -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt -ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect_gpt ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success ... ok + WARNING [root] Can't find field vendor for device lo in device class net + ERROR [root] Invalid parameters for image {'url': 'http://10.10.10.10/firmware_images/fw2.bin', 'checksum': 'a94e683ea16d9ae44768f0a65942234c', 'checksumType': 'sha512', 'component': 'MT_0000000652', 'version': '24.34.1002'},please provide the following parameters url, checksum, checksumType, componentFlavor, version + WARNING [root] The root device was not detected in 27 seconds +ironic-python-agent: Did not identify any virtual media candidates devices. + ERROR [ironic_python_agent.extensions.poll] Node lookup data can only be set when the Ironic Python Agent is running in standalone mode. + ERROR [ironic_python_agent.netutils] Socket for network interface eth0 said that it was ready to read we were unable to read from the socket while trying to get LLDP packet. Skipping this network interface. +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/netutils.py", line 197, in _get_lldp_info + lldp_info[interface[0]] = _receive_lldp_packets(s) + ~~~~~~~~~~~~~~~~~~~~~^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/netutils.py", line 160, in _receive_lldp_packets + pkt = sock.recv(1600) + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +OSError: BOOM + ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3468, in dispatch_to_all_managers + response = getattr(manager, method)(*args, **kwargs) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper + return fn(self, *args, **kwargs) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail + raise RuntimeError('A problem was encountered') +RuntimeError: A problem was encountered +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_execute_error ... ok + ERROR [root] Rescue Operation failed when writing the hashed rescue password to the password file. Error +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/rescue.py", line 48, in write_rescue_password + with open(PASSWORD_FILE, 'w') as f: + ~~~~^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +OSError +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration ... ok +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes ... ok +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate ... ok +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders ... ok + ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version + response = self._request('GET', '/') + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request + resp = self.session.request(method, + request_url, + ...<4 lines>... + timeout=CONF.http_request_timeout, + **kwargs) + File "", line 3, in request + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +Exception: Boom +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail ... ok + WARNING [root] The root device was not detected in 45 seconds +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... ok + ERROR [root] Command failed: prepare_image, error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 980, in prepare_image + _validate_partitioning(device) + ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 794, in _validate_partitioning + disk_utils.partprobe(device) + ~~~~~~~~~~~~~~~~~~~~^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/disk_utils.py", line 665, in partprobe + utils.execute('partprobe', device, attempts=attempts) + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/base.py", line 89, in do_not_call + raise Exception( + "Don't call ironic_lib.utils.execute() / " + "processutils.execute() or similar functions in tests!") +Exception: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string +ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string ERROR [root] Unexpected exception performing deploy step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +RuntimeError: boom + ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found ... ok + WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! + ERROR [root] Command failed: execute_deploy_step, error: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +RuntimeError: boom + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 88, in execute_deploy_step + raise errors.DeploymentError(msg) +ironic_python_agent.errors.DeploymentError: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom + ERROR [ironic_python_agent.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets. +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics ... WARNING [root] The root device was not detected in 27 seconds +ok + WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! + ERROR [root] Tried to execute fake.fake_sync_command, agent is still executing Command name: name, params: {}, status: RUNNING, result: None. + WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) + WARNING [ironic_python_agent.disk_utils] Failed to verify partition tables on device /dev/fake: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [root] Error performing deploy step erase_devices +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot + WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'node_node': 'also_not_node'} + ERROR [root] Command failed: execute_deploy_step, error: Block device caused unknown error: I'm a teapot +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot + WARNING [ironic_python_agent.disk_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_python_agent.ironic_api_client] Failed looking up node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' at http://agent-api.ironic.example.org. Check if inspection has completed? Error 400: {"node": {"uuid": "deadbeef-dabb-ad00-b105-f00d00bab10c"}} +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation WARNING [ironic_python_agent.disk_utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: 'fake' + ... ok + ERROR [root] Malformed deploy_step, no "step" key: {} + ERROR [root] Command failed: execute_deploy_step, error: Malformed deploy_step, no "step" key: {} +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 73, in execute_deploy_step + raise ValueError(msg) +ValueError: Malformed deploy_step, no "step" key: {} + WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) + WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'heartbeat_timeout': 300} + WARNING [ironic_python_agent.numa_inspector] Failed to get list of NUMA nodes, NUMA node path does not exist: /sys/devices/system/node/ + WARNING [ironic_python_agent.ironic_api_client] Got invalid heartbeat from the API: {'node': {'uuid': 'deadbeef-dabb-ad00-b105-f00d00bab10c'}} +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders +ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders WARNING [ironic_python_agent.extensions.standby] Failed to call get_disk_identifier: Unable to obtain the root_uuid parameter: The hexdump tool may be missing in IPA: + ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info +ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_detect_cna_card_no_i40e_driver ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device ... ok + ERROR [root] Clean version mismatch for command execute_deploy_step + ERROR [root] Invalid content error: Invalid request body: baz +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command + result = ext.execute(command_part, **kwargs) + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +ironic_python_agent.errors.InvalidContentError: Invalid request body: baz +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate +ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. + ERROR [root] Command execution error: Command execution failed: foo bar baz +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command + result = ext.execute(command_part, **kwargs) + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +ironic_python_agent.errors.CommandExecutionError: Command execution failed: foo bar baz +/bin/sh: line 1: mkisofs: command not found ERROR [root] Command failed: foo_command, error: command execution failed Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run @@ -7054,46 +8391,14 @@ File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_agent.py", line 44, in foo_execute raise EXPECTED_ERROR RuntimeError: command execution failed -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data ... ok - WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Handle' -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_always_busy ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent ... ok -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once -ironic_python_agent.tests.unit.test_disk_partitioner.DiskPartitionerTestCase.test_commit_with_device_is_busy_once ... ok -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache -ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_set_password_exception ... ok - WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices' - ERROR [root] Failed to query tool configuration of device : Unexpected error while running command. + ERROR [ironic_python_agent.utils] Failed to sync time using chrony to ntp server: 192.168.1.1: Unexpected error while running command. Command: None Exit code: - Stdout: None -Stderr: None -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected ... ok -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices -ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_enabled_unlock_exception ... ok - ERROR [ironic_python_agent.agent] error sending heartbeat to +Stderr: 'time verboten' + WARNING [ironic_python_agent.dmi_inspector] Failed to parse Handle type in dmi output: list index out of range + WARNING [root] No hardware manager was able to handle interface foobar + ERROR [ironic_python_agent.agent] error sending heartbeat to Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/agent.py", line 148, in do_heartbeat self.api.heartbeat( @@ -7110,79 +8415,41 @@ ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -Exception: uh oh! -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__ata_erase_security_erase_exec_exception ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_hash ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled ... ok -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat -ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok - ERROR [root] Failed to query firmware of device : Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point_no_pstore ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal -ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal ... ok - WARNING [ironic_python_agent.inspector] no suitable root device detected -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name ... ok -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... ok -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info ... ok -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac -ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config ... ok -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled -ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found_with_dev ... ok - ERROR [root] Failed to set configuration of device , ['SRIOV_EN=20']: Unexpected error while running command. + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +Exception: uh oh! + ERROR [ironic_python_agent.utils] Unable to sync clock, available methods of 'ntpdate' or 'chrony' not found. + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. + ERROR [ironic_python_agent.utils] failed to run dmidecode: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [root] Failed to query firmware of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [root] Extension do not found +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 267, in execute_command + ext = self.get_extension(extension_part) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 238, in get_extension + ext = self.ext_mgr[extension_name].obj + ~~~~~~~~~~~~^^^^^^^^^^^^^^^^ + File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 340, in __getitem__ + return self._extensions_by_name[name] + ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^ +KeyError: 'do' + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete ... ok + ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. Command: None Exit code: - Stdout: None @@ -7194,20 +8461,159 @@ File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command raise ExecutionError() ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok +ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete ... ok +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists ... ok + WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'} + ERROR [root] Failed to query tool configuration of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_hashed_passwords ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_hashed_passwords ... ok +ironic-python-agent: line 1. +ironic-python-agent: line 2 message + WARNING [root] Cannot find detailed information about interface bond0 + ERROR [root] Finding the partition with UUID 11111111-2222-3333-4444-555555555555 on device /dev/fake failed with Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + ERROR [ironic_python_agent.utils] collector failed: boom + ERROR [root] Failed to query firmware of device : Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [root] Unexpected exception performing service step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +RuntimeError: boom + ERROR [root] Command failed: execute_service_step, error: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +RuntimeError: boom + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 88, in execute_service_step + raise errors.ServicingError(msg) +ironic_python_agent.errors.ServicingError: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception ... ok + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail + WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Handle' + ERROR [root] Command failed: install_bootloader, error: meow +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader + _install_grub2(device, + ~~~~~~~~~~~~~~^^^^^^^^ + root_uuid=root_uuid, + ^^^^^^^^^^^^^^^^^^^^ + efi_system_part_uuid=efi_system_part_uuid, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + prep_boot_part_uuid=prep_boot_part_uuid, + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + target_boot_mode=target_boot_mode) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in _install_grub2 + File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ + return self._mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call + return self._execute_mock_call(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +OSError: meow +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success +ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found ... ok +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed +ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed ... ok +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password ... ok - ERROR [root] Encountered issue attempting to validate the supplied configuration drive. Error: Unexpected error while running command. + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image ... ok +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required +ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok + WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices' +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac +ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_pxelinux_mac ... ok + ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3512, in dispatch_to_managers + return getattr(manager, method)(*args, **kwargs) + ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper + return fn(self, *args, **kwargs) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail + raise RuntimeError('A problem was encountered') +RuntimeError: A problem was encountered + ERROR [root] Failed to set configuration of device , ['SRIOV_EN=20']: Unexpected error while running command. Command: None Exit code: - -Stdout: 'boom' +Stdout: None Stderr: None - ERROR [root] Rescue Operation failed when writing the hashed rescue password to the password file. Error + ERROR [root] Error performing service step erase_devices Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/rescue.py", line 48, in write_rescue_password - with open(PASSWORD_FILE, 'w') as f: - ~~~~^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ @@ -7216,31 +8622,15 @@ ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call raise effect -OSError - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp5xv7sso3/tmpw6jfpue1, error: [Errno 21] Is a directory: '/tmp/tmp5xv7sso3/tmpw6jfpue1' -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure ... ok - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp6odtjp9y/tmpenim5jjj, error: [Errno 21] Is a directory: '/tmp/tmp6odtjp9y/tmpenim5jjj' -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found -ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found ... ok -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror -ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok -ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok ... ok - ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device is not supported with current fw - ERROR [root] Command failed: sleep, error: An error occurred: An unexpected error occurred. Please try back later. +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot + ERROR [root] Command failed: execute_service_step, error: Block device caused unknown error: I'm a teapot Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep - time.sleep(sleep_info['time']) - ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step + result = hardware.dispatch_to_managers(step['step'], node, ports, + **kwargs) + File "", line 3, in dispatch_to_managers File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ @@ -7249,231 +8639,245 @@ ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call raise effect -ironic_python_agent.errors.RESTError: An error occurred: An unexpected error occurred. Please try back later. - ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed +ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot +ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: usb + ERROR [root] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_in_cna_card ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token ... ok +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder ... ok +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib +ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 ... ok +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic-python-agent: Excluding device sdh1 from virtual mediaconsideration as it is a partition. + ERROR [root] Malformed service_step, no "step" key: {} +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step ERROR [root] Command failed: execute_service_step, error: Malformed service_step, no "step" key: {} Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow - raise errors.CommandExecutionError( - "%s was failed" % method - ) -ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpi2cy1sgs/tmpz08hw9h_, error: [Errno 21] Is a directory: '/tmp/tmpi2cy1sgs/tmpz08hw9h_' - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpi2cy1sgs/tmp8_qx8efk, error: [Errno 21] Is a directory: '/tmp/tmpi2cy1sgs/tmp8_qx8efk' -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member ... ok + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 74, in execute_service_step + raise ValueError(msg) +ValueError: Malformed service_step, no "step" key: {} + ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema ... ok + ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device is not supported with current fw +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid ... ok +ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: sata +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device ... ok +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror +ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_write_rescue_password_ioerror ... ok +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone ... ok ERROR [root] Configuraiton: UNSUPPORTED_PARAM is not supported by mstconfig, please update to the latest mstflint package. - ERROR [root] We were unable to make a new filesystem for the configuration drive. Error: Unexpected error while running command. +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success +ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device ... WARNING [root] Cannot find detailed information about interface eth0 +ok + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. Command: None Exit code: - -Stdout: 'boom' +Stdout: None Stderr: None - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpt95e3s13/tmps743nt3e, error: [Errno 21] Is a directory: '/tmp/tmpt95e3s13/tmps743nt3e' - WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpt95e3s13/tmpl5dv6xgd, error: [Errno 21] Is a directory: '/tmp/tmpt95e3s13/tmpl5dv6xgd' -ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found -ironic_python_agent.tests.unit.test_multi_hardware.TestNoHardwareManagerLoading.test_no_managers_found ... ok -ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls -ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_cores_info ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_bios ... ok -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled -ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_linux_raid_member_false ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_fallback_uefi ... ok -ironic-python-agent: line 1. -ironic-python-agent: line 2 message - WARNING [root] We were unable to examine the configuration drive, bypassing. Error: Unexpected error while running command. + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. Command: None Exit code: - -Stdout: 'boom' +Stdout: None Stderr: None -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_driver_internal_info ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_dict ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_md5 WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: - ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info ERROR [root] Command failed: sleep, error: foo + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger + WARNING [ironic_python_agent.inspector] failed to get system journal +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid ... ok +ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: scsi +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_write_error ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail + ERROR [root] Command failed: run_image, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_flow.py", line 41, in sleep - time.sleep(sleep_info['time']) - ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1043, in _run_shutdown_command + utils.execute("echo b > /proc/sysrq-trigger", shell=True) + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "", line 3, in execute File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call return self._execute_mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call - raise result -Exception: foo - ... ERROR [root] Command failed: start_flow, error: Command execution failed: fake.sleep was failed + File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call + raise effect +oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + +During handling of the above exception, another exception occurred: + Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/flow.py", line 44, in start_flow - raise errors.CommandExecutionError( - "%s was failed" % method - ) -ironic_python_agent.errors.CommandExecutionError: Command execution failed: fake.sleep was failed -ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device ... ok - ERROR [root] Duplicate componentFlavor MT_0000000540 -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail -ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_apply_net_firmware_update ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force -ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_json_str ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_from_properties_str ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_nics_info ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger -ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_efi_bootloaders_no_csv ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_error ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha256 ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_thread_dirs ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_invalid_cap ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_failed_on_second_command ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_filter_images_duplicate_component_flavor_exception ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema ... ok - ERROR [root] Invalid parameters for image {'url': 'http://10.10.10.10/firmware_images/fw2.bin', 'checksum': 'a94e683ea16d9ae44768f0a65942234c', 'checksumType': 'sha512', 'component': 'MT_0000000652', 'version': '24.34.1002'},please provide the following parameters url, checksum, checksumType, componentFlavor, version -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_centos_checksum_sha512 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__get_windows_efi_bootloaders ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestGetEfiBootloaders.test__no_efi_bootloaders ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info -ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_override_with_instance_info ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaFirmwareImages.test_validate_images_schema_invalid_parameter ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_cores_info ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_empty_command_map ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details -ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_missing_command ... ok - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_journald_with_logfile ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_classes ... ok -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string -ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_memory_info ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_failed_to_find_extension ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file ... ok - ERROR [root] Tried to execute fake.fake_sync_command, agent is still executing Command name: name, params: {}, status: RUNNING, result: None. -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... ok -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail -ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_advertise_address_provided ... ok -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success -ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_validate_exts_success ... ok + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1051, in run_image + self._run_shutdown_command('reboot') + ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command + raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) +ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. + ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid +ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error ... ok +ironic-python-agent: Device sdh appears to not qualify as virtual due to the device size. Size: 1610612736000 +ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: usb +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured WARNING [root] Cannot find detailed information about interface eth0 + ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh WARNING [root] Cannot find detailed information about interface eth0.100 + ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets ... ok + ERROR [root] Clean version mismatch for command execute_service_step + ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow + ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None + WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None, falling back to sysrq-trigger +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_disable_embedded_lldp_agent_wrong_dir_path ... ok + WARNING [root] Cannot find detailed information about interface eth0 +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner ... ok + WARNING [root] Cannot find detailed information about interface eth0.100 + WARNING [root] Cannot find detailed information about interface eth0.101 +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup ... ok + ERROR [root] Command failed: fake_async_command, error: An error occurred: failed +Traceback (most recent call last): + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run + result = self.execute_method(**self.command_params) + File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/extensions/test_base.py", line 38, in fake_async_command + raise ExecutionError() +ironic_python_agent.tests.unit.extensions.test_base.ExecutionError: An error occurred: failed +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail ... ok +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok + WARNING [root] Cannot find detailed information about interface eth0 + WARNING [root] Cannot find detailed information about interface eth1 + WARNING [root] Cannot find detailed information about interface eth0.100 + WARNING [root] Cannot find detailed information about interface eth0.101 + WARNING [root] Cannot find detailed information about interface eth1.102 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults ... ok + WARNING [root] Cannot find detailed information about interface eth1.103 ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -7545,7 +8949,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -7563,7 +8967,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -7582,129 +8986,567 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. - ERROR [ironic_python_agent.extensions.poll] Node lookup data can only be set when the Ironic Python Agent is running in standalone mode. - WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: - ERROR [root] Invalid content error: Invalid request body: baz -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command - result = ext.execute(command_part, **kwargs) - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.InvalidContentError: Invalid request body: baz -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 ... ok +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser +ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code ... ok ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy ... ok ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command ... ok - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_no_cna_card_detected ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid ... ok +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger +ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url ... ok +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 +ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting +ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt ... ok +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success +ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_disabled ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_bad_data ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_convert_to_sparse ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure ... ok +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps +ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured ... ok +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_save_api_client ... ok +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache +ironic_python_agent.tests.unit.test_hardware.TestAPIClientSaveAndUse.test_update_node_cache ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces ... ok +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat +ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_gpt_disk_label ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__get_device_conf_dict_exception ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__add_multi_bootloaders ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_failure ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__append_uefi_to_fstab_handles_error ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios ... ok +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia +ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__mstconfig_parse_data_no_data ... ok +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled +ironic_python_agent.tests.unit.hardware_managers.test_cna.TestIntelCnaHardwareManager.test_evaluate_hardware_support_with_collect_lldp_enabled ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_configdrive_partition ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception ... ok +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root +ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension +ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_bios ... ok +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false +ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root ... ok +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal +ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal ... ok +ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute +ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... ok +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured +ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid ... ok +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none +ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_cpu ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_parse_dmi_memory ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_config_tool_exception ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided ... ok +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_ephemeral_partition ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_invalid_node ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger +ironic_python_agent.tests.unit.test_utils.TestCheckEarlyLogging.test_early_logging_goes_to_logger ... ok +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions +ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... ok +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_can_mock_execute ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid_unassociated ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_execution_failure ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test__param_supp_by_fw_exception ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_root_partition ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_handle ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration ... ok +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute +ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid ... ok +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found +ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success_without_agent ... ok +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices +ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_save_data_error_number_of_devices ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback ... ok +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails +ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_no_swap_partition ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_set_config_exception ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_indexerror ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_validation_failure ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_command_map ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv4 ... ok +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize +ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid +ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_fw ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_config_unsupported_config_by_mstflint_package ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail +ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_execution_failure ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code ... ok +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large +ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_name ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi ... ok +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image +ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces ... ok +ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives +ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported ... ok +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image +ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_success ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 ... ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_sync_command_validation_failure ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_execution_failure ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code ... ok +POST: /v1/commands {'name': 'do_things', 'params': []} +GOT: +POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}} +GOT: +POST: /v1/commands {} +GOT: +POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} +GOT: +POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} +GOT: +GET: /v1/status None +GOT: +GET: /v1/commands/abc123 None +GOT: +GET: /v1/commands None +GOT: +GET: /v1/foo None +GOT: +GET: / None +GOT: +GET: /v1 None +GOT: +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config ... ok +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success +ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_wait_async_command_success ... ok +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all ... ok +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps +ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception ... ok + WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: '' +Stderr: None, falling back to sysrq-trigger + WARNING [ironic_python_agent.ironic_api_client] Connection error when accessing 2001:db8::1/v1/heartbeat/meow, trying the next URL. Error: +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls ... ok + ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' -Stderr: None -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile -ironic_python_agent.tests.unit.test_utils.TestUtils.test_collect_system_logs_non_journald_with_logfile ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_ppc64le_prep_part ... ok - WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. +Stderr: None. + WARNING [ironic_python_agent.extensions.image] Unable to umount vfat partitions. Error: Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' Stderr: None - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/dev. Error: Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' Stderr: None - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/proc. Error: Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' Stderr: None - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/run. Error: Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' Stderr: None -ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering -ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run ... ok -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_get_hardware_info_success ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_nodes_nics_info ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_cores_info ... ok - ERROR [root] Unexpected exception performing deploy step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -RuntimeError: boom -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_empty_file_md5 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed ... ok - ERROR [root] Command failed: execute_deploy_step, error: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -RuntimeError: boom - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 88, in execute_deploy_step - raise errors.DeploymentError(msg) -ironic_python_agent.errors.DeploymentError: Deploy step failed: Unexpected exception performing deploy step erase_devices. RuntimeError: boom - WARNING [ironic_python_agent.agent] Cannot get route to host 1.2.1.2: Unexpected error while running command. + WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/sys. Error: Unexpected error while running command. Command: None Exit code: - Stdout: 'boom' Stderr: None - WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text + ERROR [root] duplicate settings for device ID 1017 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node ... ok + WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq ... ok + ERROR [root] There is no deviceID provided for this settings +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries ... ok + WARNING [root] Cannot find detailed information about interface eth0 + ERROR [ironic_python_agent.utils] boom ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -7776,7 +9618,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -7794,7 +9636,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -7813,224 +9655,66 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - ERROR [root] Command execution error: Command execution failed: foo bar baz -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 268, in execute_command - result = ext.execute(command_part, **kwargs) - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.CommandExecutionError: Command execution failed: foo bar baz - WARNING [ironic_python_agent.agent] Cannot get route to host fc00:1111::1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.agent] No route to host 1.2.1.2, route record: Error: some error text - WARNING [ironic_python_agent.agent] Cannot get route to host fc00:1111::1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - ERROR [root] Error performing deploy step erase_devices -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - ERROR [root] Command failed: execute_deploy_step, error: Block device caused unknown error: I'm a teapot -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 77, in execute_deploy_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_error ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_invalid_content ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor -ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_several_urls_and_retries ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_other_exception ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_invalid_format_memory_info ... ok -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_not_standalone ... ok -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success -ironic_python_agent.tests.unit.extensions.test_poll.TestPollExtension.test_set_node_info_success ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_uefi ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_failed_md5 ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_bios ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device ... ok +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int +ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_agent_token ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status ... ok - ERROR [ironic_python_agent.burnin] SMART test on /dev/sdj failed with 'string' -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict ... ok - ERROR [root] Malformed deploy_step, no "step" key: {} - ERROR [root] Command failed: execute_deploy_step, error: Malformed deploy_step, no "step" key: {} -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/deploy.py", line 73, in execute_deploy_step - raise ValueError(msg) -ValueError: Malformed deploy_step, no "step" key: {} - WARNING [ironic_python_agent.numa_inspector] Failed to get some NUMA information (Error in NUMA node data format: An unexpected error occurred. Please try back later.) -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command_success ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_md5 ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_exc ... ok -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image -ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_without_image ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_get_numa_node_id_valid_format ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_partition_ok ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_no_root ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_host ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_block_uuid_fallback_to_uuid ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_not_required ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_json_string ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test__smart_test_status_missing ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_no_nics_dir ... ok -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required -ironic_python_agent.tests.unit.test_disk_utils.FixGptStructsTestCases.test_fix_gpt_structs_fix_required ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_invalid_command ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_no_step ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_prep ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_md5 ... ok -ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: usb -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_other ... ok - WARNING [ironic_python_agent.utils] Ignoring malformed capability 'test:world:2'. Format should be 'key:val'. - WARNING [ironic_python_agent.utils] Ignoring malformed capability 'badformat'. Format should be 'key:val'. -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_nics_dirs ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_disk_label_gpt ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_modes_exists ... ok - ERROR [root] Extension do not found -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 267, in execute_command - ext = self.get_extension(extension_part) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 238, in get_extension - ext = self.ext_mgr[extension_name].obj - ~~~~~~~~~~~~^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 340, in __getitem__ - return self._extensions_by_name[name] - ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^ -KeyError: 'do' -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_no_logical_partitions ... ok -ironic-python-agent: Excluding device sdh1 from virtual mediaconsideration as it is a partition. - WARNING [ironic_python_agent.numa_inspector] Failed to get list of NUMA nodes, NUMA node path does not exist: /sys/devices/system/node/ -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps -ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_old_format_caps ... ok -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension -ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_unknown_extension ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha256 ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_count_mbr_partitions_wrong_partition_table ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_numa_format_memory_info ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_gpt_with_prep ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_exists_no_match ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_on ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_default ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_part ... ok +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config +ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints ... ok +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code ... ok +/bin/sh: line 1: mkisofs: command not found +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca +ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca ... ok + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' + WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping + WARNING [root] Can't find field vendor for device sda in device class block + WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping + WARNING [root] Can't find field vendor for device sdb in device class block + WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping + WARNING [root] Can't find field vendor for device md0 in device class block +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url ... ok +/bin/sh: line 1: mkisofs: command not found +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf ... skipped 'mkisofs not installed' +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -8102,7 +9786,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -8120,7 +9804,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -8139,176 +9823,34 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - ERROR [root] Unexpected exception performing service step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -RuntimeError: boom - ERROR [ironic_python_agent.burnin] fio (disk) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.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. - ERROR [root] Command failed: execute_service_step, error: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -RuntimeError: boom - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 88, in execute_service_step - raise errors.ServicingError(msg) -ironic_python_agent.errors.ServicingError: Service step failed: Unexpected exception performing service step erase_devices. RuntimeError: boom -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow - ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info -ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_threaddir_format_cores_info ... ok - ERROR [root] Clean version mismatch for command execute_deploy_step -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_command_output ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot ... ok - ERROR [root] Command failed: install_bootloader, error: meow -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/image.py", line 721, in install_bootloader - _install_grub2(device, - ~~~~~~~~~~~~~~^^^^^^^^ - root_uuid=root_uuid, - ^^^^^^^^^^^^^^^^^^^^ - efi_system_part_uuid=efi_system_part_uuid, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - prep_boot_part_uuid=prep_boot_part_uuid, - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - target_boot_mode=target_boot_mode) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in _install_grub2 - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -OSError: meow -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom ... ok -ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: sata -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_attempts ... ok - ERROR [ironic_python_agent.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. - ERROR [ironic_python_agent.utils] foo - ERROR [ironic_python_agent.utils] bar - ERROR [ironic_python_agent.utils] baz - ERROR [ironic_python_agent.utils] foo -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_grub_failure_api_override ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_exception ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_version_mismatch ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_virtual_media_device_path_doesnt_exist ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_gpt_bios ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_local_boot_uefi ... ok -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success -ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_success ... ok -ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error -ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error ... ok -ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise -ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_multiple_sha512 ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_no_fio ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_sata ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_mbr_with_prep ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure ... ok -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_raises ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_ephemeral ... ok -ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: scsi -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_plain_content_with_owner_and_group ... ok -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_with_args ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_scsi ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_iscsi_device ... ok - ERROR [root] duplicate settings for device ID 1017 -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail ... ok -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works -ironic_python_agent.tests.unit.test_disk_utils.OtherFunctionTestCase.test_is_block_device_works ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_duplicate_device_id ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_smart_test ... ok -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_local_device ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url ... ok -ironic-python-agent: Device sdh appears to not qualify as virtual due to the device size. Size: 1610612736000 -ironic-python-agent: Device sdh was disqualified as virtual media. Type: disk, Transport: usb -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device -ironic_python_agent.tests.unit.test_disk_utils.MakePartitionsTestCase.test_make_partitions_with_nvme_device ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_listen_host_port ... ok +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector +ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical ... ok +ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering +ironic_python_agent.tests.unit.test_multi_hardware_clean_steps.TestMultipleHardwareManagerCleanSteps.test_clean_step_ordering ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/md/esp using the install command which does not place Secure Boot signed binaries. + WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. +Command: grub2-install +Exit code: 1 +Stdout: '' +Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. + WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. +Command: grub2-install +Exit code: 1 +Stdout: '' +Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -8380,7 +9922,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -8398,7 +9940,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -8417,143 +9959,32 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS - ERROR [root] There is no deviceID provided for this settings -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps -ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_get_deploy_steps ... ok -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large -ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large ... ok - ERROR [root] Error performing service step erase_devices -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot - ERROR [root] Command failed: execute_service_step, error: Block device caused unknown error: I'm a teapot -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 77, in execute_service_step - result = hardware.dispatch_to_managers(step['step'], node, ports, - **kwargs) - File "", line 3, in dispatch_to_managers - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -ironic_python_agent.errors.BlockDeviceError: Block device caused unknown error: I'm a teapot -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_create_settings_map_invalid_firmware_settings_config ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_fail ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting -ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_grub_failure_api_override ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_checksum_unknown_file_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt ... ok - WARNING [ironic_python_agent.efi_utils] Invalid sgdisk line: I am a teaport - WARNING [ironic_python_agent.efi_utils] No UUID information provided in sgdisk output for partition 1 on device /dev/fake -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_units ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_under_limit ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_content_and_deleted ... ok - WARNING [root] Can't find field vendor for device lo in device class net - ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNics.test_nvidia_nics ... ok - ERROR [ironic_python_agent.disk_utils] Security: Image failed safety check - ERROR [root] Malformed service_step, no "step" key: {} - ERROR [root] Command failed: execute_service_step, error: Malformed service_step, no "step" key: {} -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/service.py", line 74, in execute_service_step - raise ValueError(msg) -ValueError: Malformed service_step, no "step" key: {} -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_format_error ... ok - ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_and_invalid_checksum ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_missing_path ... ok -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_fail_safety_check ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options -ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_no_step ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi_ignores_manage_failure ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok -ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_ok ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_no_directories ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete ... ok -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass -ironic_python_agent.tests.unit.test_disk_utils.ImageInspectionTest.test_image_inspection_pass ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicsConfig.test_prepare_nvidia_nic_config ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_disks_too_small ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_root_without_on ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.013590097427368164 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available ... ok - WARNING [root] Can't find field vendor for device lo in device class net -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_primary_sort ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_fail ... ok -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed -ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_with_network_interface_failed ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_steps_exist ... ok -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields -ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_unknown_fields ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_busybox ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort -ironic_python_agent.tests.unit.test_utils.TestUtils.test_guess_root_disk_secondary_sort ... ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' + WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab ... ok WARNING [root] Can't find field vendor for device lo in device class net -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_dev_becomes_avail_psmisc ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_params_validation ... ok - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: - ERROR [root] Clean version mismatch for command execute_service_step +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url +ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -8625,7 +10056,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -8643,7 +10074,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -8662,131 +10093,21 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_busybox ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.001947641372680664 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_invalid ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode -ironic_python_agent.tests.unit.test_utils.TestUtils.test_gzip_and_b64encode ... ok - ERROR [ironic_python_agent.utils] collector failed: boom -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2 ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection ... ok - WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'lacking kernel support' -Stderr: None -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present ... ok - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: - WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: Error downloading image: Download of image fake_id failed: Received status code 500 from http://example.org, expected 200. Response body: Response headers: ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. Command: None Exit code: - -Stdout: 'boom' +Stdout: 'error' Stderr: None. - WARNING [ironic_python_agent.extensions.image] Unable to umount vfat partitions. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/dev. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/proc. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/run. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [ironic_python_agent.extensions.image] Unable to umount /tmp/fake-dir/sys. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None - WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: - ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed - WARNING [ironic_python_agent.disk_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_python_agent.disk_utils] Failed to check the device fake-dev with fuser: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'fake' -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_with_args ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false -ironic_python_agent.tests.unit.test_utils.TestUtils.test_is_journalctl_present_false ... ok - ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_no_wait ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_command_fail ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success -ironic_python_agent.tests.unit.extensions.test_standby.TestImageDownload.test_download_image_retries_success ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_bios ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_false_wait ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_device_in_use_psmisc ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_device ... ok -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser -ironic_python_agent.tests.unit.test_disk_utils.WaitForDisk.test_wait_for_disk_to_become_available_no_fuser ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps -ironic_python_agent.tests.unit.test_utils.TestUtils.test_secure_boot_overriden_with_instance_info_caps ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type ... ok -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps -ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_get_service_steps ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_clean_uefi_nvram_defaults ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boop' -Stderr: None -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch_but_disabled ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_type_disallowed ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_success_with_true_wait ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 ... ok ERROR [ironic_lib.exception] Exception in string format operation (arguments ) Traceback (most recent call last): File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ @@ -8794,87 +10115,23 @@ ~~~~~~~~~~~~~~^~~~~~~~ KeyError: 'service' WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__sync_clock ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_disk_label_ignored_with_uefi ... ok -ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute -ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... ok - WARNING [root] The root device was not detected in 27 seconds - WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 ... ok WARNING [root] Can't find field vendor for device lo in device class net WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_qcow2 ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection_without_apiurl ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_validation ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_cache_and_write_image_configdirve ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_happy_raw ... ok -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config -ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_disk_label ... ok -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr -ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled -ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_safety_check_fail_but_disabled ... ok -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label -ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_with_instance_disk_label ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token ... ok -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... ok - WARNING [ironic_python_agent.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_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_execute_agent_command_with_token_invalid ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_prep ... ok - WARNING [root] The root device was not detected in 45 seconds -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_fails ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_agent_status ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_configured ... ok -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger -ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_decode_exception ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders -ironic_python_agent.tests.unit.test_efi_utils.TestRunEfiBootmgr.test__run_efibootmgr_no_bootloaders ... ok - WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'} + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' + WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' + WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping + WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -8946,7 +10203,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -8964,7 +10221,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -8983,391 +10240,66 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_get_command_result ... ok -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions ... ok +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_collect_lldp_data_netutils_exception ... ok - WARNING [root] The root device was not detected in 27 seconds +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_sleep ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_already_set ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_exceeds_2TB_nvme ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_list_command_results ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image ... ok -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions -ironic_python_agent.tests.unit.test_hardware.TestVersions.test_get_current_versions ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_disks_timeout_unconfigured ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00033974647521972656 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00033974647521972656 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version - response = self._request('GET', '/') - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request - resp = self.session.request(method, - request_url, - ...<4 lines>... - timeout=CONF.http_request_timeout, - **kwargs) - File "", line 3, in request - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -Exception: Boom -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01092529296875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01092529296875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.012372732162475586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.012372732162475586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.014839649200439453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.014839649200439453 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.015990734100341797 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.015990734100341797 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_bios ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.019287824630737305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.019287824630737305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.021435260772705078 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.021435260772705078 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.026652812957763672 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.026652812957763672 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_error ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0271909236907959 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0271909236907959 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.029680967330932617 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0001850128173828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0001850128173828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0015497207641601562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0015497207641601562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0030641555786132812 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0030641555786132812 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.010162830352783203 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.010162830352783203 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.010966777801513672 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.010966777801513672 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.013876199722290039 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.013876199722290039 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.015111446380615234 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.015111446380615234 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_conf_credential ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_fresh ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.021541833877563477 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.021541833877563477 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0250852108001709 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0250852108001709 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.02569437026977539 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_image_info_credential ... ok -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root -ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_v1_root ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00029659271240234375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.00029659271240234375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004971981048583984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.004971981048583984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid5 ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test__get_ironic_api_version_set_via_conf ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_no_wait_for_disks ... ok -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... ok + WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed + WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed + WARNING [ironic_python_agent.extensions.image] Failed to copy grubenv file. Error: copy failed +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_ssl ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_ssl ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01366877555847168 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01366877555847168 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.019754648208618164 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.019754648208618164 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.023484230041503906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.023484230041503906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test__create_partition_mbr_disk_under_2TB_nvme ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/md/esp using the install command which does not place Secure Boot signed binaries. - WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. -Command: grub2-install -Exit code: 1 -Stdout: '' -Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. - WARNING [ironic_python_agent.extensions.image] Ignoring GRUB2 boot loader installation failure: Unexpected error while running command. -Command: grub2-install -Exit code: 1 -Stdout: '' -Stderr: 'grub2-install: error: this utility cannot be used for EFI platforms because it does not support UEFI Secure Boot.\n'. - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.031761884689331055 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.031761884689331055 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03627586364746094 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03627586364746094 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03730940818786621 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03730940818786621 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib -ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_ironic_lib ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04581475257873535 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04581475257873535 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04688262939453125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_device_handling_failures_raid6 ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_softraid_uefi_gpt ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential ... ok -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_default_collector_loadable ... ok - WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'node_node': 'also_not_node'} -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_body ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0004582405090332031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0004582405090332031 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.009232759475708008 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.009232759475708008 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.013292312622070312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.013292312622070312 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.018995285034179688 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.018995285034179688 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.01968526840209961 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.01968526840209961 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.020996809005737305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.020996809005737305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector -ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.025739669799804688 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.025739669799804688 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.ironic_api_client] Failed looking up node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' at http://agent-api.ironic.example.org. Check if inspection has completed? Error 400: {"node": {"uuid": "deadbeef-dabb-ad00-b105-f00d00bab10c"}} - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.027553319931030273 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.027553319931030273 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_error_counting WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.033509016036987305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config - ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.033509016036987305 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_code ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.041477203369140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_basic_auth_mixed_credential_second ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_empty_target_raid_config ... ok - WARNING [ironic_python_agent.ironic_api_client] Got invalid node data in response to query for node with addresses '00:0c:29:8c:11:b1,00:0c:29:8c:11:b2' from http://agent-api.ironic.example.org: {'heartbeat_timeout': 300} - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0014350414276123047 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0014350414276123047 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.022420883178710938 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.022420883178710938 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.02598881721496582 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.02598881721496582 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_bad_response_data ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.030200719833374023 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.030200719833374023 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.03831171989440918 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.03831171989440918 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04199504852294922 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04199504852294922 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04645562171936035 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04645562171936035 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_conf_drive_sz_exceed ... ok -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_configured ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_failure_with_nvme ... ok - WARNING [ironic_python_agent.ironic_api_client] Got invalid heartbeat from the API: {'node': {'uuid': 'deadbeef-dabb-ad00-b105-f00d00bab10c'}} - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.04995989799499512 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.04995989799499512 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.05388498306274414 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.05388498306274414 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_no_heartbeat_timeout ... ok - WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.05875253677368164 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: Response headers: -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_bad_status ... ok - ERROR [ironic_python_agent.utils] boom -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_force_gpt_with_disk_label ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists ... ok -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls -ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_hints ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured -ironic_python_agent.tests.unit.test_hardware.TestEvaluateHardwareSupport.test_evaluate_hw_waits_for_disks_nonconfigured ... ok - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty ... ok - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt ... ok - WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping - WARNING [root] Can't find field vendor for device sda in device class block - WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - WARNING [root] Can't find field vendor for device sdb in device class block - WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping - WARNING [root] Can't find field vendor for device md0 in device class block +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme ... ok + WARNING [root] Failed to remove partitions on /dev/sda: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'No md superblock detected' +Stderr: None + WARNING [root] Failed to remove partitions on /dev/sdb: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'No md superblock detected' +Stderr: None +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... ok ERROR [ironic_lib.exception] Exception in string format operation (arguments ) Traceback (most recent call last): File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ message = self._msg_fmt % kwargs ~~~~~~~~~~~~~~^~~~~~~~ KeyError: 'service' -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_conf_success ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_benchmarks ... ok WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_in_param ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_node_locked ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_fstab ... ok - ERROR [ironic_python_agent.utils] failed to run hardware-detect utility: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure ... ok WARNING [root] Can't find field vendor for device lo in device class net ERROR [ironic_python_agent.agent] Neither ipa-api-url nor inspection_callback_urlfound, please check your pxe append parameters. WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_execute_failed ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_use_vfat ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_no_benchmarks ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_invalid_type_on_node ... ok + ERROR [root] Unable to clean all softraid correctly. Remaining ['/dev/md0'] ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_without_inspection_and_apiurl ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_without_inspection_and_apiurl ... ok - ERROR [ironic_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0) -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed -ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_gpt_with_fallback ... ok -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_max_is_first_logical ... ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_num_parts_exceed ... ok - ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None. - ERROR [root] Failed to create config drive on disk /dev/fake for node 12345678-1234-1234-1234-1234567890abcxyz. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_bad_iso_qcow2 ... skipped 'mkisofs not installed' -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false -ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_basic_auth_image_info_success ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_esp_raid ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_mount_fails ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid -ironic_python_agent.tests.unit.test_raid_utils.TestFindESPRAID.test_no_esp_raid ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_transient_exceptions ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_exc ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test__get_actual_component_devices_broken_raid0 ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_proxy ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_create_device ... ok -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail -ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_part_create_fail ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining ... ok WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmp9gukhurq/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum - WARNING [root] Device /dev/sda1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda1' - WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda1. Skipping -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_no_max ... ok - WARNING [ironic_python_agent.extensions.image] Falling back to fstab entry addition label of UUID. We could not identify which UUID or PARTUUID identifier label should be used, thus UUID will be used. - WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image_verify_fails ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_fail_read_device ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_none ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_partitions_detected ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception ... ok - WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_image_info_user_pass_success ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure ... ok +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -9439,7 +10371,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -9457,7 +10389,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -9476,121 +10408,39 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_none ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_with_volume_name ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default -ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_gen_auth_from_oslo_conf_user_pass_success ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_get_volume_name_of_raid_device_invalid ... ok -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_9660 ... skipped 'mkisofs not installed' -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_gpt ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_unknown_exception_fallback ... ok -/bin/sh: 1: mkisofs: not found -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_iso_udf ... skipped 'mkisofs not installed' -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_bios_msdos ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup_with_uuid ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_skip_list_existing_device_does_not_match ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv4 ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_status_code ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. +ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default ... WARNING [root] RAID device /dev/md1 will not be deleted +ok + WARNING [root] Software RAID device /dev/md1 is not going to be deleted as its volume name - small - is on the skip list + WARNING [root] Software RAID device /dev/md1 was not deleted + WARNING [root] Holder disk /dev/sda contains logical disk on the skip list. Deleting just partitions: ['1'] + WARNING [root] Holder disk /dev/sdb contains logical disk on the skip list. Deleting just partitions: ['1'] +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist ... WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. +ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl +ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled ... ok + WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. + ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. Command: None Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_skip_list ... ok - ERROR [root] Command failed: power_off, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1041, in _run_shutdown_command - utils.execute("echo o > /proc/sysrq-trigger", shell=True) - ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. +Stdout: 'error' +Stderr: None. + ERROR [ironic_python_agent.extensions.image] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. Command: None Exit code: - -Stdout: None +Stdout: 'error' Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off - self._run_shutdown_command('poweroff') - ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command - raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) -ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_ipv6 ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_bad_url ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_efi_provided ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_get_agent_url_protocol ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails ... ok ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 Traceback (most recent call last): File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve @@ -9662,7 +10512,7 @@ ~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) +urllib3.exceptions.NameResolutionError: : Failed to resolve 'example.com' ([Errno -2] Name or service not known) The above exception was the direct cause of the following exception: @@ -9680,7 +10530,7 @@ File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) During handling of the above exception, another exception occurred: @@ -9699,563 +10549,86 @@ r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) +requests.exceptions.ConnectionError: HTTPSConnectionPool(host='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'example.com' ([Errno -2] Name or service not known)")) WARNING [ironic_python_agent.agent] Ironic does not support automated TLS -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_error ... ok ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_explicitly ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_explicitly ... ok - ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_409_status_code ... ok -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size -ironic_python_agent.tests.unit.test_disk_utils.GetDeviceByteSizeTestCase.test_get_dev_byte_size ... ok - WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed - WARNING [ironic_python_agent.extensions.image] Failed to copy grub.cfg file for EFI boot operation. Error copy failed - WARNING [ironic_python_agent.extensions.image] Failed to copy grubenv file. Error: copy failed - ERROR [root] Command failed: power_off, error: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 825, in sync_clock - execute('ntpdate', CONF.ntp_server) - ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1096, in _sync_clock - utils.sync_clock(ignore_errors=ignore_errors) - ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/utils.py", line 832, in sync_clock - raise errors.CommandExecutionError(msg) -ironic_python_agent.errors.CommandExecutionError: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1057, in power_off - self._run_shutdown_command('poweroff') - ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1016, in _run_shutdown_command - self._sync_clock(ignore_errors=True) - ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1106, in _sync_clock - raise errors.ClockSyncError(msg) -ironic_python_agent.errors.ClockSyncError: Error syncing system clock: Failed to sync hardware clock: Command execution failed: Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found -ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_prepare_boot_partitions_for_softraid_uefi_gpt_esp_not_found ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_grubcfg_fails ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off_with_ntp_server ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_agent_version_unsupported ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region ... ok -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url -ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok_with_ironic_url ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_get_inspector ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_chronyd ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_nvme ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_1 ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_none ... ok - ERROR [root] Command failed: prepare_image, error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 980, in prepare_image - _validate_partitioning(device) - ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 794, in _validate_partitioning - disk_utils.partprobe(device) - ~~~~~~~~~~~~~~~~~~~~^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/disk_utils.py", line 665, in partprobe - utils.execute('partprobe', device, attempts=attempts) - ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/base.py", line 89, in do_not_call - raise Exception( - "Don't call ironic_lib.utils.execute() / " - "processutils.execute() or similar functions in tests!") -Exception: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_2 ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_determine_time_method_ntpdate ... ok - WARNING [root] Failed to remove partitions on /dev/sda: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'No md superblock detected' -Stderr: None - WARNING [root] Failed to remove partitions on /dev/sdb: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'No md superblock detected' -Stderr: None -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_error_format_3 ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_loader_with_grubcfg ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_configdrive ... ok - ERROR [root] Unable to clean all softraid correctly. Remaining ['/dev/md0'] -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_failure_blocks_remaining ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_invalid_status_code ... ok - ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail - WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', ), ('eth1', )] -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_file_like_eats_error ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_empty ... ok - ERROR [ironic_python_agent.utils] Failed to sync time using chrony to ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: 'time verboten' - WARNING [ironic_python_agent.extensions.standby] Failed to call get_disk_identifier: Unable to obtain the root_uuid parameter: The hexdump tool may be missing in IPA: -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_connection_error ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_no_hexdump ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition ... ok - WARNING [ironic_python_agent.netutils] Trailing byte received in an LLDP package: b'5' -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_base64_string ... ok - ERROR [ironic_python_agent.utils] Unable to sync clock, available methods of 'ntpdate' or 'chrony' not found. -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_none ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_exception ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_malformed ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_binary ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like ... ok - WARNING [ironic_python_agent.ironic_api_client] Connection error when accessing 2001:db8::1/v1/heartbeat/meow, trying the next URL. Error: -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_no_loader ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_heartbeat_requests_several_urls ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp ... ok - WARNING [root] RAID device /dev/md1 will not be deleted - WARNING [root] Software RAID device /dev/md1 is not going to be deleted as its volume name - small - is on the skip list - WARNING [root] Software RAID device /dev/md1 was not deleted - WARNING [root] Holder disk /dev/sda contains logical disk on the skip list. Deleting just partitions: ['1'] - WARNING [root] Holder disk /dev/sdb contains logical disk on the skip list. Deleting just partitions: ['1'] -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_and_stream_false ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_multiple ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_skip_list ... ok - ERROR [ironic_python_agent.utils] Failed to sync with ntp server: 192.168.1.1: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node ... ok - WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', )] -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_deploy_steps_exist ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_raw_stream_true ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_raises_exception ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_one_empty_interface ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_node_retries ... ok - ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail - ERROR [ironic_python_agent.netutils] Socket for network interface eth0 said that it was ready to read we were unable to read from the socket while trying to get LLDP packet. Skipping this network interface. -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/netutils.py", line 197, in _get_lldp_info - lldp_info[interface[0]] = _receive_lldp_packets(s) - ~~~~~~~~~~~~~~~~~~~~~^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/netutils.py", line 160, in _receive_lldp_packets - pkt = sock.recv(1600) - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -OSError: BOOM -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_info_wrapper_iter_like_eats_error ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info_socket_recv_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_erase_disabled ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image ... ok -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none -ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp_server_is_none ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets ... ok - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: An unknown error occurred erasing block device /dev/sda - WARNING [ironic_python_agent.inspector] Failed to gather vendor id, product id or pci class from PCI device bar: - WARNING [ironic_python_agent.inspector] Wrong format of vendor id, product id or pci class in PCI device baz: -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_and_stream_false ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_gzip_error ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_lookup_timeout ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat ... ok - ERROR [ironic_python_agent.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets. -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_bind_fail ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_token ... ok -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca -ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_with_verify_ca ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image_raw_stream_true ... ok - WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device foo: - WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device bar: -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger - WARNING [root] Failed to invoke secure erase, falling back to shred: Error erasing block device: An unknown error occurred erasing block device /dev/sda - ERROR [root] Command failed: run_image, error: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1043, in _run_shutdown_command - utils.execute("echo b > /proc/sysrq-trigger", shell=True) - ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/base.py", line 174, in run - result = self.execute_method(**self.command_params) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1051, in run_image - self._run_shutdown_command('reboot') - ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/extensions/standby.py", line 1045, in _run_shutdown_command - raise errors.SystemRebootError(e.exit_code, e.stdout, e.stderr) -ironic_python_agent.errors.SystemRebootError: Error rebooting system: Reboot script failed with exit code None. stdout: None. stderr: None. -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued ... ok - ERROR [ironic_python_agent.utils] Failed to get list of PCI devices: -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets_exception ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_partition_image_with_preserve_failure2 ... ok - ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] Failed to sync file system buffers: Command execution failed: Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None - WARNING [ironic_python_agent.extensions.standby] reboot command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None, falling back to sysrq-trigger -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path -ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_fails ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_both_succeed ... ok - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda is frozen and cannot be erased ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_disabled ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_invalid ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen ... ok + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: An unknown error occurred erasing block device /dev/sda ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_flags_disabled ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid ... ok -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 -ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails ... ok - WARNING [ironic_python_agent.extensions.image] GRUB2 will be installed for UEFI on efi partition /dev/fake1 using the install command which does not place Secure Boot signed binaries. - ERROR [ironic_python_agent.extensions.image] Installing GRUB2 boot loader to device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None. - ERROR [ironic_python_agent.extensions.image] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'error' -Stderr: None - WARNING [ironic_python_agent.extensions.standby] poweroff command failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: '' -Stderr: None, falling back to sysrq-trigger -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_insecure ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_poweroff_sysrq ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_umount_fails ... ok - WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger - ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda already has a security password set -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid_reboot_sysrq ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_both_succeed ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_just_fails_disabled ... ok -ironic-python-agent: Copying configuration from /tmp/tmp9a_5iffo/etc/ironic-python-agent to /etc/ironic-python-agent -ironic-python-agent: Copying configuration from /tmp/tmp9a_5iffo/etc/ironic-python-agent.d to /etc/ironic-python-agent.d -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_empty ... ok +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable +ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass ... ok -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable -ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_not_bootable ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl -ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_alternate_error_disabled ... ok -ironic-python-agent: Copying configuration from /tmp/tmpcmv0wa1k/etc/ironic-python-agent to /etc/ironic-python-agent ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded_uefi_mode ... ok - WARNING [root] Unable to execute `smartctl` utility: boom -ironic-python-agent: Copying configuration from /tmp/tmpcmv0wa1k/etc/ironic-python-agent.d to /etc/ironic-python-agent.d + WARNING [root] Failed to invoke secure erase, falling back to shred: Error erasing block device: An unknown error occurred erasing block device /dev/sda ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_copy_mounted ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_failed_continued ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_and_fails_disabled ... ok - WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st ... ok ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled ironic_python_agent.tests.unit.test_qemu_img.ConvertImageTestCase.test_convert_image_retries_disabled ... ok -ironic-python-agent: /some/path/etc/ironic-python-agent not found -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_generic_method_only ... ok -ironic-python-agent: /some/path/etc/ironic-python-agent.d not found -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_mounted_no_files ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred ... ok + WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_find_partition ... ok -ironic-python-agent: /tmp/tmpg43vg_4e/etc/ironic-python-agent not found -ironic-python-agent: /tmp/tmpg43vg_4e/etc/ironic-python-agent.d not found -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files ... ok + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda is frozen and cannot be erased +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen ... ok WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_given_partition ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error ... ok -ironic-python-agent: No virtual media device detected -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred ... ok -ironic-python-agent: Cannot use configuration from virtual media as the agent was not booted from virtual media. WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_vmedia ... ok -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia -ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_vmedia_found_not_booted_from_vmedia ... ok -ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys -ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... ok + ERROR [root] Failed to invoke secure erase, fallback to shred is not enabled: Error erasing block device: Block device /dev/sda already has a security password set +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled ... ok ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_unlock_fallback_pass ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success ... ok + WARNING [root] Unable to execute `smartctl` utility: boom +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_success_no_smartctl ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_crypto_success ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_crypto_success ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_fails ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed ... ok - ERROR [root] nvme-cli did not return any supported format modes for device: /dev/nvme0n1 -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_mainline_only ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize ... ok - ERROR [root] Erasing block device /dev/sda failed with error -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror ... ok - ERROR [root] Erasing block device /dev/sda failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror ... ok - WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 7: 0b0/0b0 - WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 0: 0b0/0b1111 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_manager_method_not_found ... ok - WARNING [root] Refusing to permit ATA Secure Erase as direct ATA commands via the `smartctl` utility with device /dev/sda do not succeed. -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred ... ok WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__uefi_bootloader_with_entry_removal_lenovo ... ok -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred -ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred ... ok + ERROR [root] nvme-cli did not return any supported format modes for device: /dev/nvme0n1 +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_format_unsupported ... ok WARNING [ironic_python_agent.extensions.image] Boot mode mismatch: target boot mode is bios, current boot mode is uefi. Installing boot loader may fail or work incorrectly. WARNING [ironic_python_agent.extensions.image] efibootmgr is not available in the ramdisk ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error @@ -10295,67 +10668,58 @@ File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call raise effect FileNotFoundError - ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3468, in dispatch_to_all_managers - response = getattr(manager, method)(*args, **kwargs) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper - return fn(self, *args, **kwargs) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail - raise RuntimeError('A problem was encountered') -RuntimeError: A problem was encountered -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_dispatch_to_all_managers_method_fails ... ok ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test_install_bootloader_failure ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_0_pass_no_zeroize ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_cache_hardware_info ... ok + ERROR [root] Erasing block device /dev/sda failed with error +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_oserror ... ok + WARNING [ironic_python_agent.inspector] no suitable root device detected +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_no_root_disk ... ok + ERROR [root] Erasing block device /dev/sda failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_fail_processerror ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok +ironic_python_agent.tests.unit.test_inspector.TestCollectDefault.test_ok ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info ... ok + WARNING [root] Refusing to permit ATA Secure Erase as direct ATA commands via the `smartctl` utility with device /dev/sda do not succeed. +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_fails_security_fallback_to_shred ... ok +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred +ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_smartctl_unsupported_shred ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_virtual_media ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_virtual_media ... ok -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... ok -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image -ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_raw_image ... ok -ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching -ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_number_nvme ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_generic_method_only ... ok -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path ... ok - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path -ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_without_on_wrong_path ... ok -/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:57: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_before_utc. - self.assertLess(cert.not_valid_before, -/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_tls_utils.py:59: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_after_utc. - self.assertGreater(cert.not_valid_after, -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_fails ... ok +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries +ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 ... ok + WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 7: 0b0/0b0 + WARNING [ironic_python_agent.format_inspector] Found unknown feature bit in byte 0: 0b0/0b1111 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_feature_flag_checks ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency_pool_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency_pool_size ... ok -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate -ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express ... ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express_stops_on_safety_failure ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express_stops_on_safety_failure ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_manager_method_not_found ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata ... ok ERROR [root] Failed to erase the metadata on device "/dev/sdb". Error: Unexpected error while running command. @@ -10363,20 +10727,8 @@ Exit code: - Stdout: 'Booo00000ooommmmm' Stderr: None - ERROR [root] Unexpected error dispatching unexpected_fail to manager : A problem was encountered -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 3512, in dispatch_to_managers - return getattr(manager, method)(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 32, in wrapper - return fn(self, *args, **kwargs) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/tests/unit/test_multi_hardware.py", line 101, in unexpected_fail - raise RuntimeError('A problem was encountered') -RuntimeError: A problem was encountered ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_error ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_error ... ok -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails -ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_method_fails ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata_safety_check @@ -10385,24 +10737,21 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default_protected_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default_protected_device ... ok - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_without_disk ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_without_disk ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_pstore ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_pstore ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_ok ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid ... ok WARNING [root] Executable 'biosdevname' not found ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_oserror ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_oserror ... ok -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries -ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err3 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err3 ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed ... ok - WARNING [ironic_python_agent.inspector] Connection error when accessing url1, trying the next URL. Error: ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err4 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bios_given_nic_name_process_exec_err4 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address @@ -10412,8 +10761,6 @@ WARNING [root] Invalid IP address meow: 'meow' does not appear to be an IPv4 or IPv6 address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_iterate_channels ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_iterate_channels ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_no_ipmi_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_no_ipmi_device ... ok WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address @@ -10429,8 +10776,6 @@ WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_not_available ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_not_available ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_random_error ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_random_error ... ok WARNING [root] Cannot get BMC address: Unexpected error while running command. @@ -10440,30 +10785,21 @@ Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_virt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_virt ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_zeroed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_zeroed ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac ... ok - WARNING [root] Invalid ipmitool output meow +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_invalid ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_invalid ... ok +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid ... ok + WARNING [root] Invalid ipmitool output meow ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_iterate_channels ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_iterate_channels ... ok - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_no_ipmi_device ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio ... ok WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output @@ -10475,10 +10811,10 @@ WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output WARNING [root] Invalid ipmitool output + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_not_available ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_not_available ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_random_error ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_random_error ... ok WARNING [root] Cannot get BMC MAC address: Unexpected error while running command. @@ -10486,59 +10822,26 @@ Exit code: - Stdout: None Stderr: None -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_virt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_virt ... ok -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi_invalid ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_zeroed ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_zeroed ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_channel_7 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_channel_7 ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_dynamic_address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_dynamic_address ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_enables ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_enables ... ok - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. -Command: None -Exit code: 16 -Stdout: 'Connection timeout' -Stderr: None - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. -Command: None -Exit code: 16 -Stdout: 'Connection timeout' -Stderr: None - ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. -Command: None -Exit code: 16 -Stdout: 'Connection refused' -Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_get_address ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_invalid_get_address ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_ipmitool_invalid_stdout_format ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_ipmitool_invalid_stdout_format ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_no_ipmi_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_no_ipmi_device ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_not_enabled ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_not_enabled ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_static_address_both ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_static_address_both ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile ... ok WARNING [root] Cannot get BMC v6 address: Unexpected error while running command. Command: None Exit code: - @@ -10546,170 +10849,47 @@ Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_virt ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_v6address_virt ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_bios ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_bios ... ok - ERROR [ironic_python_agent.burnin] stress-ng (cpu) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_pxe_interface ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_pxe_interface ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_uefi ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_boot_info_uefi ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_clean_steps ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_clean_steps ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_component_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_component_devices ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_illegal_flags ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_illegal_flags ... ok - ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. - ERROR [ironic_python_agent.burnin] stress-ng (vm) failed with error Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_and_flag_fallback ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_and_flag_fallback ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_flag_fallback ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_max_mhz_flag_fallback ... ok -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_no_flags ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_no_flags ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_clean_boot_records ... ok - WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! - WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_broken_raid0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_broken_raid0 ... ok - WARNING [ironic_python_agent.efi_utils] Empty EFI partition detected. -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_poisoned_output ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_poisoned_output ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_empty_partition_by_uuid ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_unexpected_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_unexpected_devices ... ok - ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_nvme ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_nvme ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_whole_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_holder_disks_with_whole_device ... ok - ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 131, in manage_uefi - utils.execute('mount', efi_partition, efi_partition_mount_point) - ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call - raise effect -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_arm64_lshw ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_arm64_lshw ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... ok WARNING [root] Could not get real physical RAM from lshw: -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_ok ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_exception ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_exception ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum ... ok - ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 185, in manage_uefi - _run_efibootmgr(valid_efi_bootloaders, efi_dev, efi_part, - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - efi_partition_mount_point) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 351, in _run_efibootmgr - boot_records = list(get_boot_records()) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 282, in get_boot_records - efi_output = utils.execute('efibootmgr', '-v', binary=True) - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call - raise result -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_lshw_list ... ok - ERROR [ironic_python_agent.efi_utils] Umounting efi system partition failed. Attempted 3 times. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'no umount' -Stderr: None -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_send_failure -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_send_failure ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_bank_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_bank_size ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_api_url -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_api_url ... ok ERROR [root] Cannot fetch total memory size using psutil version 5 Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 1648, in get_memory @@ -10727,35 +10907,6 @@ AttributeError ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v1 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v1 ... ok - ERROR [ironic_python_agent.efi_utils] Could not configure UEFI boot on device /dev/fake: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 185, in manage_uefi - _run_efibootmgr(valid_efi_bootloaders, efi_dev, efi_part, - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - efi_partition_mount_point) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 351, in _run_efibootmgr - boot_records = list(get_boot_records()) - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/efi_utils.py", line 282, in get_boot_records - efi_output = utils.execute('efibootmgr', '-v', binary=True) - File "", line 3, in execute - File "/usr/lib/python3.13/unittest/mock.py", line 1167, in __call__ - return self._mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call - return self._execute_mock_call(*args, **kwargs) - ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3.13/unittest/mock.py", line 1230, in _execute_mock_call - raise result -oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None ERROR [root] Cannot fetch total memory size using psutil version 5 Traceback (most recent call last): File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/hardware.py", line 1648, in get_memory @@ -10771,63 +10922,43 @@ File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call raise effect AttributeError -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v2 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_exception_v2 ... ok - WARNING [ironic_python_agent.inspector] Connection error when accessing http://url1/v1/continue_inspection, trying the next URL. Error: -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_mount ... ok -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_v1 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_v1 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_v2 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_memory_psutil_v2 ... ok WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Can't find field vendor for device sda in device class block WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls ... ok WARNING [root] Can't find field vendor for device sdb in device class block WARNING [root] Device /dev/sdc is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdc' WARNING [root] Can't find field vendor for device sdc in device class block WARNING [root] Device /dev/sdd is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdd' WARNING [root] Can't find field vendor for device sdd in device class block -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc ... ok WARNING [root] Device /dev/dm-0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/dm-0' WARNING [root] Can't find field vendor for device dm-0 in device class block -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_not_found ... ok WARNING [root] Using hint {'vendor': 'basic vendor'} skipping devices: /dev/sda,/dev/sdb -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_complete_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_complete_skip_list ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_found_csv ... ok - WARNING [ironic_python_agent.disk_utils] Unable to probe for partitions on device /dev/fake, the partitioning table may be broken. Error: Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_gpt ... ok +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr +ironic_python_agent.tests.unit.test_disk_utils.FindEfiPartitionTestCase.test_find_efi_partition_only_boot_flag_mbr ... ok WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Can't find field vendor for device sda in device class block WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' WARNING [root] Can't find field vendor for device sdb in device class block -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_fails ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_fails ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_get_boot_records ... ok WARNING [root] We have identified a multipath device sda, this is being ignored in favor of dm-0 and its related child devices. WARNING [root] We have identified a multipath device sda2, this is being ignored in favor of dm-0 and its related child devices. WARNING [root] We have identified a multipath device sda3, this is being ignored in favor of dm-0 and its related child devices. @@ -10842,20 +10973,10 @@ WARNING [root] Can't find field vendor for device sdc in device class block WARNING [root] Device /dev/dm-1 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/dm-1' WARNING [root] Can't find field vendor for device dm-1 in device class block -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_multipath ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_multipath ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_no_root_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_no_root_device ... ok -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase -ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field ... ok WARNING [root] We have identified a multipath device sda, this is being ignored in favor of dm-0 and its related child devices. WARNING [root] We have identified a multipath device sda2, this is being ignored in favor of dm-0 and its related child devices. WARNING [root] We have identified a multipath device sda3, this is being ignored in favor of dm-0 and its related child devices. @@ -10872,205 +10993,39 @@ WARNING [root] Can't find field vendor for device dm-1 in device class block ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_not_multipath ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_not_multipath ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo ... ok WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Can't find field vendor for device sda in device class block WARNING [root] Device /dev/sdb is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sdb' WARNING [root] Can't find field vendor for device sdb in device class block WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' WARNING [root] Can't find field vendor for device md0 in device class block -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_different_sizes ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_raid ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_raid ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_software_raid ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 ... ok -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk -ironic_python_agent.tests.unit.test_partition_utils.RealFilePartitioningTestCase.test_whole_disk ... skipped "parted utility was not found: [Errno 2] No such file or directory: 'parted'" ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_by_path ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_by_path ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields ... ok -ironic-python-agent: Excluding device sda1 from virtual mediaconsideration as it is a partition. -ironic-python-agent: Found possible vmedia candidate /dev/sda2, however the device failed vmedia validity checking. -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 ... ok -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk -ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... ok -ironic-python-agent: Was unable to execute the lsblk command. Unexpected error while running command. -Command: None -Exit code: - -Stdout: None -Stderr: None -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_handles_exec_error ... ok -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize ... ok -ironic-python-agent: Did not identify any virtual media candidates devices. -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize -ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__find_vmedia_device_by_labels_not_found ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url ... ok - WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password ... ok -ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev -ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_device ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user ... ok -ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs -ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test_collect_system_logs ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_iinfo ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_iinfo ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_enabled_no_results ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_model ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_model ... ok -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_node_indicates_skip ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_name ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_name ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_by_device_device_invalid ... ok - ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently algo-beyond-milky-way) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_not_enabled ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params_cannot_find_dev ... ok - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure ... ok - ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-sha512-value; verification checksum: invalid-checksum -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises -ironic_python_agent.tests.unit.test_hardware.TestProtectedDiskSafetyChecks.test_special_filesystem_guard_raises ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_exc ... ok - ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently unsupported-algorithm) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__read_params_from_file_fail ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_false ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success ... ok -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true -ironic_python_agent.tests.unit.test_partition_utils.IsDiskLargerThanMaxSizeTestCases.test_is_disk_larger_than_max_size_true ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_from_cache ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image ... ok -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia -ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_vmedia ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails ... ok - ERROR [ironic_lib.exception] Exception in string format operation (arguments ) -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ - message = self._msg_fmt % kwargs - ~~~~~~~~~~~~~~^~~~~~~~ -KeyError: 'reason' -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception ... ok -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid ... ok - ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi ... ok WARNING [ironic_lib.utils] No device found that matches the root device hints {'model': 'fastable sd131 7', 'wwn': 'fake-wwn', 'serial': 'fake-serial', 'vendor': 'fake-vendor', 'size': 10} ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_no_device_found ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_no_device_found ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file ... ok - ERROR [root] Failed to move file: /firmware_images/fw1.bin, -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_file_not_found ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_rotational ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_rotational ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_serial ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_serial ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http ... ok - ERROR [root] Failed to open URL data: HTTP Error 500: Internal Error -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_err ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size ... ok - ERROR [root] Failed to open URL data: ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_not_int ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_not_int ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_http_url_err ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_str ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_str ... ok -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_https ... ok WARNING [root] Using hint {'vendor': 'fake-vendor'} skipping devices: /dev/sdb -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_invalid_url_scheme ... ok - ERROR [root] Mismatch provided checksum a94e683ea16d9ae44768f0a65942234d for image http://10.10.10.10/firmware_images/fw1.bin -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_checksum ... ok - ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228 WARNING [ironic_lib.utils] No device found that matches the root device hints {'wwn': 'fake-wwn'} -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_component_flavor ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_skip_list ... ok - ERROR [root] The provided firmware version 20.34.1012 does not match image firmware version 20.35.1012 -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version -ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicFirmwareBinary.test_nvidia_nic_firmware_binray_mismatch_fw_version ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_vendor ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_vendor ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_wwn @@ -11095,197 +11050,52 @@ ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info_failure ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info_lshw_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info_lshw_list ... ok - ERROR [ironic_python_agent.ironic_api_client] An error occurred while attempting to discover the available Ironic API versions, falling back to using version 1.31 -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 463, in resolve - return _proxy.query(name, rdtype, raise_on_no_answer=raises, - ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - use_network=use_network) - ^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 407, in query - step(self._resolver.query, qname, rdtype, rdclass, tcp, source, raise_on_no_answer=False) - ^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 347, in _resolver - self.clear() - ~~~~~~~~~~^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 355, in clear - self._resolver = dns.resolver.Resolver(filename=self._filename) - ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/dns/resolver.py", line 945, in __init__ - self.read_resolv_conf(filename) - ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/dns/resolver.py", line 1039, in read_resolv_conf - raise NoResolverConfiguration("no nameservers") -dns.resolver.NoResolverConfiguration: no nameservers - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 198, in _new_conn - sock = connection.create_connection( - (self._dns_host, self.port), - ...<2 lines>... - socket_options=self.socket_options, - ) - File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 60, in create_connection - for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): - ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 558, in getaddrinfo - qname, addrs = _getaddrinfo_lookup(host, family, flags) - ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 529, in _getaddrinfo_lookup - raise err - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 518, in _getaddrinfo_lookup - answer = resolve(host, qfamily, False, use_network=use_network) - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 473, in resolve - _raise_new_error(EAI_NODATA_ERROR) - ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ - File "/usr/lib/python3/dist-packages/eventlet/support/greendns.py", line 100, in _raise_new_error - raise error_instance.__class__(*error_instance.args) -socket.gaierror: [Errno -2] Name or service not known - -The above exception was the direct cause of the following exception: - -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 787, in urlopen - response = self._make_request( - conn, - ...<10 lines>... - **response_kw, - ) - File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 488, in _make_request - raise new_e - File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 464, in _make_request - self._validate_conn(conn) - ~~~~~~~~~~~~~~~~~~~^^^^^^ - File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1093, in _validate_conn - conn.connect() - ~~~~~~~~~~~~^^ - File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 704, in connect - self.sock = sock = self._new_conn() - ~~~~~~~~~~~~~~^^ - File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 205, in _new_conn - raise NameResolutionError(self.host, self, e) from e -urllib3.exceptions.NameResolutionError: : Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known) - -The above exception was the direct cause of the following exception: - -Traceback (most recent call last): - File "/usr/lib/python3/dist-packages/requests/adapters.py", line 667, in send - resp = conn.urlopen( - method=request.method, - ...<9 lines>... - chunked=chunked, - ) - File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 841, in urlopen - retries = retries.increment( - method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2] - ) - File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 519, in increment - raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 130, in _get_ironic_api_version - response = self._request('GET', '/') - File "/build/reproducible-path/ironic-python-agent-9.14.0/ironic_python_agent/ironic_api_client.py", line 90, in _request - resp = self.session.request(method, - request_url, - ...<4 lines>... - timeout=CONF.http_request_timeout, - **kwargs) - File "/usr/lib/python3/dist-packages/requests/sessions.py", line 589, in request - resp = self.send(prep, **send_kwargs) - File "/usr/lib/python3/dist-packages/requests/sessions.py", line 703, in send - r = adapter.send(request, **kwargs) - File "/usr/lib/python3/dist-packages/requests/adapters.py", line 700, in send - raise ConnectionError(e, request=request) -requests.exceptions.ConnectionError: HTTPSConnectionPool(host='fake_api.example.org', port=8081): Max retries exceeded with url: / (Caused by NameResolutionError(": Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)")) - WARNING [ironic_python_agent.agent] Ironic does not support automated TLS ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_usb_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_usb_devices ... ok -ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia -ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_ipmi_device_exists ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_ipmi_device_exists ... ok - WARNING [root] No hardware manager was able to handle interface foobar WARNING [root] Device /dev/sda is inaccessible, skipping... Error: WARNING [root] Device /dev/sdb is not supported by pyudev, skipping... Error: No block device with number 1234 WARNING [root] Device /dev/sdc is inaccessible, skipping... Error: WARNING [root] We have identified a multipath device sdd, this is being ignored in favor of dm-0 and its related child devices. WARNING [root] Device /dev/dm-0 is inaccessible, skipping... Error: -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device ... ok - WARNING [root] Cannot find detailed information about interface eth0 WARNING [root] We have identified a multipath device sdd, this is being ignored in favor of dm-0 and its related child devices. -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_no_carrier ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_all_serial ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_all_serial ... ok WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping - WARNING [root] Cannot find detailed information about interface eth0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_hctl_fail ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_hctl_fail ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_biosdevname ... ok - WARNING [root] Cannot find detailed information about interface bond0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_only_udev ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_only_udev ... ok WARNING [root] We have identified a multipath device sdd, this is being ignored in favor of dm-0 and its related child devices. -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_bond ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_udev ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_udev ... ok - WARNING [root] Cannot find detailed information about interface eth0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_no_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_no_skip_list ... ok WARNING [root] Using hint {'name': '/dev/sdj'} skipping devices: /dev/sdj - WARNING [root] Cannot find detailed information about interface eth0 WARNING [root] Using hint {'name': '/dev/hdaa'} skipping devices: /dev/hdaa -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_complete_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_complete_skip_list ... ok WARNING [root] Using hint {'name': '/dev/sdj'} skipping devices: /dev/sdj ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_skip_list ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_skip_list ... ok - WARNING [root] Cannot find detailed information about interface eth0 -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_vendor_info ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_skip_list_non_exist ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_check_skip_list_with_skip_list_non_exist ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_including_partitions ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_including_partitions ... ok - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface eth0.100 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_hardware_info ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_hardware_info ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase ... ok - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface eth0.100 - WARNING [root] Cannot find detailed information about interface eth0.101 -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_service_steps_exist ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_service_steps_exist ... ok WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' - WARNING [root] Cannot find detailed information about interface eth0 - WARNING [root] Cannot find detailed information about interface eth1 - WARNING [root] Cannot find detailed information about interface eth0.100 WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping WARNING [root] Can't find field vendor for device sda in device class block @@ -11295,9 +11105,6 @@ WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping WARNING [root] Can't find field vendor for device md0 in device class block - WARNING [root] Cannot find detailed information about interface eth0.101 - WARNING [root] Cannot find detailed information about interface eth1.102 - WARNING [root] Cannot find detailed information about interface eth1.103 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_MAX_MAX ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_MAX_MAX ... ok WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' @@ -11310,15 +11117,10 @@ WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping WARNING [root] Can't find field vendor for device md0 in device class block -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_interfaces_using_lldp_all ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_duplicate_volume_name ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_duplicate_volume_name ... ok - WARNING [root] Cannot find detailed information about interface eth0 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_no_of_raids ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_no_of_raids ... ok -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int -ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int ... ok WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping @@ -11331,22 +11133,11 @@ WARNING [root] Can't find field vendor for device md0 in device class block ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_raid_level ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_raid_level ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... ok - ERROR [root] Finding the partition with UUID 11111111-2222-3333-4444-555555555555 on device /dev/fake failed with Unexpected error while running command. -Command: None -Exit code: - -Stdout: 'boom' -Stderr: None -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_no_configuration ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_no_configuration ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_fallback_partuuid ... ok - WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1 ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1 ... ok + WARNING [root] Path /dev/disk/by-path is inaccessible, /dev/disk/by-path/* version of block device name is unavailable Cause: [Errno 2] No such file or directory: '/dev/disk/by-path' WARNING [root] Device /dev/sda is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/sda' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sda. Skipping WARNING [root] Can't find field vendor for device sda in device class block @@ -11356,45 +11147,324 @@ WARNING [root] Device /dev/md0 is inaccessible, skipping... Error: [Errno 2] No such file or directory: '/dev/md0' WARNING [root] Could not find the SCSI address (HCTL) for device /dev/md0. Skipping WARNING [root] Can't find field vendor for device md0 in device class block -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... ok ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1_raidN ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_valid_raid1_raidN ... ok - ERROR [root] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_no_device_found ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled ... ok -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid -ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe ... ok -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe -ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe ... ok -ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives -ironic_python_agent.tests.unit.test_utils.TestUnmountOfConfig.test__unmount_any_config_drives ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_no_device ... ok -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok -ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok ... ok -ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute -ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_already_running ... ok + WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'lacking kernel support' +Stderr: None +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_lacking_support ... ok + WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_no_multipath ... ok + WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_not_found_mpath_config ... ok +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config +ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config ... ok + ERROR [root] Encountered issue attempting to validate the supplied configuration drive. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpfbd6aiig/tmp5h_zso5f, error: [Errno 21] Is a directory: '/tmp/tmpfbd6aiig/tmp5h_zso5f' +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st ... ok +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_failed ... ok + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpvgbcj977/tmp03hsojzy, error: [Errno 21] Is a directory: '/tmp/tmpvgbcj977/tmp03hsojzy' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__does_config_drive_work ... ok + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpwmxb0hcs/tmp5qwdalil, error: [Errno 21] Is a directory: '/tmp/tmpwmxb0hcs/tmp5qwdalil' + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpwmxb0hcs/tmprbx2wr_e, error: [Errno 21] Is a directory: '/tmp/tmpwmxb0hcs/tmprbx2wr_e' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive ... ok + ERROR [root] We were unable to make a new filesystem for the configuration drive. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpuz2l5da9/tmpio3vhpwv, error: [Errno 21] Is a directory: '/tmp/tmpuz2l5da9/tmpio3vhpwv' + WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpuz2l5da9/tmp7sqq12ft, error: [Errno 21] Is a directory: '/tmp/tmpuz2l5da9/tmp7sqq12ft' +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_fails_once_invalid ... ok + WARNING [root] We were unable to examine the configuration drive, bypassing. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail +ironic_python_agent.tests.unit.test_partition_utils.TestConfigDriveTestRecovery.test__try_build_fat32_config_drive_graceful_fail ... ok + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 2: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Error downloading image: Download of image fake_id failed: Timed out reading next chunk from webserver +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_2nd ... ok + ERROR [ironic_python_agent.extensions.standby] Timeout reached waiting for a chunk of data from a remote server. +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout ... ok + WARNING [ironic_python_agent.extensions.standby] Image download failed, 0 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 1 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 2 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 4 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 5 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 6 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 7 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! + WARNING [ironic_python_agent.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: Unable to write image to device /dev/foo. Error: Surprise!!!1! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_write_error ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync ... ok + ERROR [ironic_python_agent.extensions.standby] Flushing file system buffers failed. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_sync_error ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_empty_urls ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_invalid_urls ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_legacy_md5_checksum_enabled ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_missing_field ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_algo ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_no_hash_value ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_sha256 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_ignore_none_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_with_new_hash_fields ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_success_without_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_validate_image_info_url ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_password ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_empty_user ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_password ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_basic_auth_creds_none_user ... ok + ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently algo-beyond-milky-way) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_fails_if_unknown_is_used ... ok + ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure ... ok + ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /foo/bar; image ID: fake_id; image checksum: fake-sha512-value; verification checksum: invalid-checksum +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_with_new_hash_fields ... ok + ERROR [ironic_python_agent.extensions.standby] Unable to verify image fake_id with available checksums. Please make sure the specified 'os_hash_algo' (currently unsupported-algorithm) is supported by this ramdisk, or provide a md5 checksum via the 'checksum' field +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_failure_without_fallback ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_md5_fallback ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_with_new_hash_fields ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_verify_image_success_without_md5 ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails ... ok + ERROR [ironic_lib.exception] Exception in string format operation (arguments ) +Traceback (most recent call last): + File "/usr/lib/python3/dist-packages/ironic_lib/exception.py", line 134, in __init__ + message = self._msg_fmt % kwargs + ~~~~~~~~~~~~~~^~~~~~~~ +KeyError: 'reason' +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_gpt_fails ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception ... ok +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception_image_mb ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid ... ok + ERROR [ironic_python_agent.disk_utils] Failed to fix GPT partition on disk /dev/sda for node None. Error: Don't call ironic_lib.utils.execute() / processutils.execute() or similar functions in tests! +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_no_node_uuid_uefi ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_absent ... ok + WARNING [ironic_python_agent.disk_utils] Unable to probe for partitions on device /dev/fake, the partitioning table may be broken. Error: Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_exc ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present ... ok +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase +ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_present_uppercase ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_defaults ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_no_defaults ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_missing_config ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_pairing_raise_wrong_config ... ok + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: 'boom' +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_fio ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_partner ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_no_role ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader ... ok + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection timeout' +Stderr: None + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection timeout' +Stderr: None + ERROR [ironic_python_agent.burnin] fio (network) failed with error Unexpected error while running command. +Command: None +Exit code: 16 +Stdout: 'Connection refused' +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_loop ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_reader_w_logfile ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_unknown_role ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_writer_w_logfile ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_default ... ok + ERROR [ironic_python_agent.burnin] stress-ng (cpu) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_no_stress_ng ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_cpu_non_default ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_default ... ok + ERROR [ironic_python_agent.burnin] stress-ng (vm) failed with error Unexpected error while running command. +Command: None +Exit code: - +Stdout: None +Stderr: None +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_no_stress_ng ... ok +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_stress_ng_vm_non_default ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_4096 ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_ebr ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_sgdisk_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_tiny_partition ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_fail ... ok +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force +ironic_python_agent.tests.unit.test_disk_utils.DestroyMetaDataTestCase.test_destroy_disk_metadata_wipefs_not_support_force ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_boot_only ... ok +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled +ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx_invalid ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk ... ok 5+0 records in 5+0 records out -5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.0878638 s, 59.7 MB/s +5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.0190094 s, 276 MB/s +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed ... ok + WARNING [ironic_python_agent.inspector] Connection error when accessing url1, trying the next URL. Error: +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_several_urls ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_ok ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_send_failure +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_send_failure ... ok +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_api_url +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_api_url ... ok + WARNING [ironic_python_agent.inspector] Connection error when accessing http://url1/v1/continue_inspection, trying the next URL. Error: +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_use_several_api_urls ... ok + WARNING [ironic_python_agent.inspector] Failed to gather vendor id, product id or pci class from PCI device bar: + WARNING [ironic_python_agent.inspector] Wrong format of vendor id, product id or pci class in PCI device baz: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_bad_pci_device_info ... ok +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success ... ok + WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device foo: + WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device bar: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror ... ok + ERROR [ironic_python_agent.utils] Failed to get list of PCI devices: +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path +ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_wrong_path ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit ... ok 5+0 records in 5+0 records out -5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.21128 s, 24.8 MB/s +5242880 bytes (5.2 MB, 5.0 MiB) copied, 0.0187976 s, 279 MB/s ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized ... ok ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location @@ -11418,55 +11488,36 @@ ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid_type ... ok ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_stream_optimized ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_stream_optimized ... ok -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... ok - WARNING [ironic_python_agent.inspector] failed to get system journal -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail -ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail ... ok -POST: /v1/commands {'name': 'do_things', 'params': []} -GOT: -POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}} -GOT: -POST: /v1/commands {} -GOT: -POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} -GOT: -POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}} -GOT: -GET: /v1/status None -GOT: -GET: /v1/commands/abc123 None -GOT: -GET: /v1/commands None -GOT: -GET: /v1/foo None -GOT: -GET: / None -GOT: -GET: /v1 None -GOT: +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... ok +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail +ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers_detail ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_doesnt_exist_disabled ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_disabled ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_safe ... ok +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe +ironic_python_agent.tests.unit.test_qemu_img.ImageInfoTestCase.test_image_info_path_exists_unsafe ... ok ---------------------------------------------------------------------- -Ran 1023 tests in 151.410s +Ran 1023 tests in 20.031s OK (skipped=5) + stestr slowest Test id Runtime (s) --------------------------------------------------------------------------------------------------------------------------------- ----------- -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized 55.027 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit 47.259 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx 18.176 -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries 4.051 -ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout 3.103 -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st 3.066 -ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk 2.982 -ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout 2.156 -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed 2.046 -ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error 2.027 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit_stream_optimized 4.456 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit 4.292 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries 4.012 +ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx 3.965 +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st 3.048 +ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout 3.026 +ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout 2.020 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed 2.008 +ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error 2.007 +ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run 1.094 + rm -rf .stestr mkdir -p /build/reproducible-path/ironic-python-agent-9.14.0/debian/ironic-python-agent/etc/ironic-python-agent PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages oslo-config-generator \ @@ -11508,20 +11559,21 @@ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done -+ ls -1 debian/ironic-python-agent.init.in -+ echo debian/ironic-python-agent.init.in -+ sed s/.init.in// +++ ls -1 debian/ironic-python-agent.init.in ++ for i in `ls -1 debian/*.init.in` +++ echo debian/ironic-python-agent.init.in +++ sed s/.init.in// + MYINIT=debian/ironic-python-agent + cp debian/ironic-python-agent.init.in debian/ironic-python-agent.init + cat /usr/share/openstack-pkg-tools/init-script-template + pkgos-gen-systemd-unit debian/ironic-python-agent.init.in -/usr/bin/pkgos-gen-systemd-unit: 22: debian/ironic-python-agent.init.in: modprobe: not found +debian/ironic-python-agent.init.in: line 22: modprobe: command not found # 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 \ @@ -11530,13 +11582,14 @@ pkgos-gen-systemd-unit $i ; \ fi \ done -+ ls debian/ironic-python-agent.init.in -+ echo debian/ironic-python-agent.init.in -+ sed s/.init.in/.service.in/ +++ ls debian/ironic-python-agent.init.in ++ for i in `ls debian/*.init.in` +++ echo debian/ironic-python-agent.init.in +++ sed s/.init.in/.service.in/ + MYINIT=debian/ironic-python-agent.service.in -+ [ -e debian/ironic-python-agent.service.in ] ++ '[' -e debian/ironic-python-agent.service.in ']' + pkgos-gen-systemd-unit debian/ironic-python-agent.init.in -/usr/bin/pkgos-gen-systemd-unit: 22: debian/ironic-python-agent.init.in: modprobe: not found +debian/ironic-python-agent.init.in: line 22: modprobe: command not found dh_installinit --error-handler=true make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0' debian/rules override_dh_installsystemd @@ -11550,20 +11603,21 @@ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done -+ ls -1 debian/ironic-python-agent.init.in -+ echo debian/ironic-python-agent.init.in -+ sed s/.init.in// +++ ls -1 debian/ironic-python-agent.init.in ++ for i in `ls -1 debian/*.init.in` +++ echo debian/ironic-python-agent.init.in +++ sed s/.init.in// + MYINIT=debian/ironic-python-agent + cp debian/ironic-python-agent.init.in debian/ironic-python-agent.init + cat /usr/share/openstack-pkg-tools/init-script-template + pkgos-gen-systemd-unit debian/ironic-python-agent.init.in -/usr/bin/pkgos-gen-systemd-unit: 22: debian/ironic-python-agent.init.in: modprobe: not found +debian/ironic-python-agent.init.in: line 22: modprobe: command not found # 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 \ @@ -11572,13 +11626,14 @@ pkgos-gen-systemd-unit $i ; \ fi \ done -+ ls debian/ironic-python-agent.init.in -+ sed s/.init.in/.service.in/ -+ echo debian/ironic-python-agent.init.in +++ ls debian/ironic-python-agent.init.in ++ for i in `ls debian/*.init.in` +++ echo debian/ironic-python-agent.init.in +++ sed s/.init.in/.service.in/ + MYINIT=debian/ironic-python-agent.service.in -+ [ -e debian/ironic-python-agent.service.in ] ++ '[' -e debian/ironic-python-agent.service.in ']' + pkgos-gen-systemd-unit debian/ironic-python-agent.init.in -/usr/bin/pkgos-gen-systemd-unit: 22: debian/ironic-python-agent.init.in: modprobe: not found +debian/ironic-python-agent.init.in: line 22: modprobe: command not found dh_installsystemd make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0' dh_installlogrotate -O--buildsystem=pybuild @@ -11610,12 +11665,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/3271428/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3271428/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/3418573 and its subdirectories -I: Current time: Thu Jan 30 02:30:33 -12 2025 -I: pbuilder-time-stamp: 1738247433 +I: removing directory /srv/workspace/pbuilder/3271428 and its subdirectories +I: Current time: Thu Mar 5 10:59:13 +14 2026 +I: pbuilder-time-stamp: 1772657953