I: pbuilder: network access will be disabled during build
I: Current time: Sat Feb  7 11:10:49 +14 2026
I: pbuilder-time-stamp: 1770412249
I: Building the build Environment
I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
I: copying local configuration
W: --override-config is not set; not updating apt.conf Read the manpage for details.
I: mounting /proc filesystem
I: mounting /sys filesystem
I: creating /{dev,run}/shm
I: mounting /dev/pts filesystem
I: redirecting /dev/ptmx to /dev/pts/ptmx
I: policy-rc.d already exists
I: using eatmydata during job
I: Copying source file
I: copying [ironic-python-agent_9.14.0-5.dsc]
I: copying [./ironic-python-agent_9.14.0.orig.tar.xz]
I: copying [./ironic-python-agent_9.14.0-5.debian.tar.xz]
I: Extracting source
dpkg-source: warning: cannot verify inline signature for ./ironic-python-agent_9.14.0-5.dsc: unsupported subcommand
dpkg-source: info: extracting ironic-python-agent in ironic-python-agent-9.14.0
dpkg-source: info: unpacking ironic-python-agent_9.14.0.orig.tar.xz
dpkg-source: info: unpacking ironic-python-agent_9.14.0-5.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying remove-broken-test.patch
dpkg-source: info: applying Replace_crypt_module.patch
dpkg-source: info: applying fix-syntax-warning.patch
I: using fakeroot in build.
I: Installing the build-deps
I: user script /srv/workspace/pbuilder/53651/tmp/hooks/D01_modify_environment starting
debug: Running on ionos16-i386.
I: Changing host+domainname to test build reproducibility
I: Adding a custom variable just for the fun of it...
I: Changing /bin/sh to bash
'/bin/sh' -> '/bin/bash'
lrwxrwxrwx 1 root root 9 Feb  6 21:11 /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/53651/tmp/hooks/D01_modify_environment finished
I: user script /srv/workspace/pbuilder/53651/tmp/hooks/D02_print_environment starting
I: set
  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]="i686-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=i386
  DEBIAN_FRONTEND=noninteractive
  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=21 '
  DIRSTACK=()
  DISTRIBUTION=unstable
  EUID=0
  FUNCNAME=([0]="Echo" [1]="main")
  GROUPS=()
  HOME=/root
  HOSTNAME=i-capture-the-hostname
  HOSTTYPE=i686
  HOST_ARCH=i386
  IFS=' 	
  '
  INVOCATION_ID=02cf1c38b1cf4f7a98936b37c095c573
  LANG=C
  LANGUAGE=de_CH:de
  LC_ALL=C
  LD_LIBRARY_PATH=/usr/lib/libeatmydata
  LD_PRELOAD=libeatmydata.so
  MACHTYPE=i686-pc-linux-gnu
  MAIL=/var/mail/root
  OPTERR=1
  OPTIND=1
  OSTYPE=linux-gnu
  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
  PBCURRENTCOMMANDLINEOPERATION=build
  PBUILDER_OPERATION=build
  PBUILDER_PKGDATADIR=/usr/share/pbuilder
  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
  PBUILDER_SYSCONFDIR=/etc
  PIPESTATUS=([0]="0")
  POSIXLY_CORRECT=y
  PPID=53651
  PS4='+ '
  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.aVMovsf0/pbuilderrc_xH2D --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.aVMovsf0/b2 --logfile b2/build.log ironic-python-agent_9.14.0-5.dsc'
  SUDO_GID=112
  SUDO_UID=107
  SUDO_USER=jenkins
  TERM=unknown
  TZ=/usr/share/zoneinfo/Etc/GMT-14
  UID=0
  USER=root
  _='I: set'
  http_proxy=http://213.165.73.152:3128
I: uname -a
  Linux i-capture-the-hostname 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux
I: ls -l /bin
  lrwxrwxrwx 1 root root 7 Nov 22  2024 /bin -> usr/bin
I: user script /srv/workspace/pbuilder/53651/tmp/hooks/D02_print_environment finished
 -> Attempting to satisfy build-dependencies
 -> Creating pbuilder-satisfydepends-dummy package
Package: pbuilder-satisfydepends-dummy
Version: 0.invalid.0
Architecture: i386
Maintainer: Debian Pbuilder Team <pbuilder-maint@lists.alioth.debian.org>
Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder
 This package was created automatically by pbuilder to satisfy the
 build-dependencies of the package being currently built.
Depends: debhelper-compat (= 11), dh-python, libffi-dev, openstack-pkg-tools, python3-all, python3-all-dev, python3-pbr, python3-setuptools, python3-coverage, python3-cryptography, python3-eventlet, python3-hardware, python3-ironic-lib (>= 6.0.0), python3-kazoo, python3-netifaces, python3-oslo.concurrency, python3-oslo.config, python3-oslo.log, python3-oslo.service, python3-oslo.utils, python3-oslotest, python3-pint, python3-psutil, python3-pyudev, python3-requests, python3-stestr, python3-stevedore, python3-tenacity, python3-testtools, python3-tooz, python3-werkzeug, qemu-utils
dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'.
Selecting previously unselected package pbuilder-satisfydepends-dummy.
(Reading database ... 19838 files and directories currently installed.)
Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ...
Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ...
dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested:
 pbuilder-satisfydepends-dummy depends on debhelper-compat (= 11); however:
  Package debhelper-compat is not installed.
 pbuilder-satisfydepends-dummy depends on dh-python; however:
  Package dh-python is not installed.
 pbuilder-satisfydepends-dummy depends on libffi-dev; however:
  Package libffi-dev is not installed.
 pbuilder-satisfydepends-dummy depends on openstack-pkg-tools; however:
  Package openstack-pkg-tools is not installed.
 pbuilder-satisfydepends-dummy depends on python3-all; however:
  Package python3-all is not installed.
 pbuilder-satisfydepends-dummy depends on python3-all-dev; however:
  Package python3-all-dev is not installed.
 pbuilder-satisfydepends-dummy depends on python3-pbr; however:
  Package python3-pbr is not installed.
 pbuilder-satisfydepends-dummy depends on python3-setuptools; however:
  Package python3-setuptools is not installed.
 pbuilder-satisfydepends-dummy depends on python3-coverage; however:
  Package python3-coverage is not installed.
 pbuilder-satisfydepends-dummy depends on python3-cryptography; however:
  Package python3-cryptography is not installed.
 pbuilder-satisfydepends-dummy depends on python3-eventlet; however:
  Package python3-eventlet is not installed.
 pbuilder-satisfydepends-dummy depends on python3-hardware; however:
  Package python3-hardware is not installed.
 pbuilder-satisfydepends-dummy depends on python3-ironic-lib (>= 6.0.0); however:
  Package python3-ironic-lib is not installed.
 pbuilder-satisfydepends-dummy depends on python3-kazoo; however:
  Package python3-kazoo is not installed.
 pbuilder-satisfydepends-dummy depends on python3-netifaces; however:
  Package python3-netifaces is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslo.concurrency; however:
  Package python3-oslo.concurrency is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslo.config; however:
  Package python3-oslo.config is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslo.log; however:
  Package python3-oslo.log is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslo.service; however:
  Package python3-oslo.service is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslo.utils; however:
  Package python3-oslo.utils is not installed.
 pbuilder-satisfydepends-dummy depends on python3-oslotest; however:
  Package python3-oslotest is not installed.
 pbuilder-satisfydepends-dummy depends on python3-pint; however:
  Package python3-pint is not installed.
 pbuilder-satisfydepends-dummy depends on python3-psutil; however:
  Package python3-psutil is not installed.
 pbuilder-satisfydepends-dummy depends on python3-pyudev; however:
  Package python3-pyudev is not installed.
 pbuilder-satisfydepends-dummy depends on python3-requests; however:
  Package python3-requests is not installed.
 pbuilder-satisfydepends-dummy depends on python3-stestr; however:
  Package python3-stestr is not installed.
 pbuilder-satisfydepends-dummy depends on python3-stevedore; however:
  Package python3-stevedore is not installed.
 pbuilder-satisfydepends-dummy depends on python3-tenacity; however:
  Package python3-tenacity is not installed.
 pbuilder-satisfydepends-dummy depends on python3-testtools; however:
  Package python3-testtools is not installed.
 pbuilder-satisfydepends-dummy depends on python3-tooz; however:
  Package python3-tooz is not installed.
 pbuilder-satisfydepends-dummy depends on python3-werkzeug; however:
  Package python3-werkzeug is not installed.
 pbuilder-satisfydepends-dummy depends on qemu-utils; however:
  Package qemu-utils is not installed.

Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ...
Reading package lists...
Building dependency tree...
Reading state information...
Initializing package states...
Writing extended state information...
Building tag database...
pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0)
pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0)
The following NEW packages will be installed:
  autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} docutils-common{a} dwz{a} ethtool{a} file{a} freeipmi-common{a} gettext{a} gettext-base{a} groff-base{a} hdparm{a} ieee-data{a} intltool-debian{a} ipmitool{a} jq{a} libabsl20230802{a} libaio1t64{a} libarchive-zip-perl{a} libcares2{a} libcom-err2{a} libconfig9{a} libdebhelper-perl{a} libelf1t64{a} libev4t64{a} libexpat1{a} libexpat1-dev{a} libffi-dev{a} libffi8{a} libfile-stripnondeterminism-perl{a} libfreeipmi17{a} libgcrypt20{a} libglib2.0-0t64{a} libgnutls30t64{a} libgpg-error0{a} libgssapi-krb5-2{a} libice6{a} libicu72{a} libidn2-0{a} libjq1{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} libk5crypto3{a} libkeyutils1{a} libkmod2{a} libkrb5-3{a} libkrb5support0{a} libmagic-mgc{a} libmagic1t64{a} libmnl0{a} libnl-3-200{a} libnsl2{a} libnuma1{a} libonig5{a} libp11-kit0{a} libpci3{a} libpipeline1{a} libproc2-0{a} libprotobuf32t64{a} libpsl5t64{a} libpython3-all-dev{a} libpython3-dev{a} libpython3-stdlib{a} libpython3.12-dev{a} libpython3.12-minimal{a} libpython3.12-stdlib{a} libpython3.12t64{a} libpython3.13{a} libpython3.13-dev{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libre2-11{a} libreadline8t64{a} libsm6{a} libsubunit-perl{a} libtasn1-6{a} libtirpc-common{a} libtirpc3t64{a} libtool{a} libuchardet0{a} libunistring5{a} liburing2{a} libx11-6{a} libx11-data{a} libxau6{a} libxcb1{a} libxdmcp6{a} libxext6{a} libxml2{a} libxmu6{a} libxslt1.1{a} libxt6t64{a} libyaml-0-2{a} lldpad{a} lsb-release{a} lshw{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} openstack-pkg-tools{a} pci.ids{a} pciutils{a} po-debconf{a} procps{a} python-babel-localedata{a} python3{a} python3-all{a} python3-all-dev{a} python3-async-timeout{a} python3-autocommand{a} python3-autopage{a} python3-babel{a} python3-bcrypt{a} python3-blinker{a} python3-certifi{a} python3-cffi-backend{a} python3-chardet{a} python3-charset-normalizer{a} python3-cliff{a} python3-cmd2{a} python3-coverage{a} python3-cryptography{a} python3-dateutil{a} python3-debtcollector{a} python3-decorator{a} python3-deprecated{a} python3-deprecation{a} python3-dev{a} python3-dnspython{a} python3-docutils{a} python3-dogpile.cache{a} python3-etcd3{a} python3-etcd3gw{a} python3-eventlet{a} python3-extras{a} python3-fasteners{a} python3-fixtures{a} python3-flexcache{a} python3-flexparser{a} python3-futurist{a} python3-gevent{a} python3-greenlet{a} python3-grpcio{a} python3-hardware{a} python3-idna{a} python3-ifaddr{a} python3-inflect{a} python3-ironic-lib{a} python3-iso8601{a} python3-jaraco.context{a} python3-jaraco.functools{a} python3-jaraco.text{a} python3-jinja2{a} python3-jmespath{a} python3-json-pointer{a} python3-jsonpatch{a} python3-jwt{a} python3-kazoo{a} python3-kerberos{a} python3-keystoneauth1{a} python3-legacy-cgi{a} python3-lxml{a} python3-mako{a} python3-markupsafe{a} python3-minimal{a} python3-monotonic{a} python3-more-itertools{a} python3-msgpack{a} python3-netaddr{a} python3-netifaces{a} python3-oauthlib{a} python3-openstacksdk{a} python3-os-client-config{a} python3-os-service-types{a} python3-oslo.concurrency{a} python3-oslo.config{a} python3-oslo.context{a} python3-oslo.i18n{a} python3-oslo.log{a} python3-oslo.serialization{a} python3-oslo.service{a} python3-oslo.utils{a} python3-oslotest{a} python3-packaging{a} python3-paste{a} python3-pastedeploy{a} python3-pastedeploy-tpl{a} python3-pbr{a} python3-pexpect{a} python3-pint{a} python3-pip{a} python3-pkg-resources{a} python3-platformdirs{a} python3-prettytable{a} python3-protobuf{a} python3-psutil{a} python3-ptyprocess{a} python3-pure-sasl{a} python3-pyasyncore{a} python3-pymemcache{a} python3-pymysql{a} python3-pyparsing{a} python3-pyperclip{a} python3-pyudev{a} python3-redis{a} python3-repoze.lru{a} python3-requests{a} python3-requestsexceptions{a} python3-rfc3986{a} python3-roman{a} python3-routes{a} python3-setuptools{a} python3-six{a} python3-stestr{a} python3-stevedore{a} python3-subunit{a} python3-tempita{a} python3-tenacity{a} python3-testtools{a} python3-tomlkit{a} python3-tooz{a} python3-typeguard{a} python3-typing-extensions{a} python3-tz{a} python3-urllib3{a} python3-voluptuous{a} python3-wcwidth{a} python3-webob{a} python3-werkzeug{a} python3-wheel{a} python3-wrapt{a} python3-yaml{a} python3-yappi{a} python3-zake{a} python3-zeroconf{a} python3-zipp{a} python3-zope.event{a} python3-zope.interface{a} python3.12{a} python3.12-dev{a} python3.12-minimal{a} python3.13{a} python3.13-dev{a} python3.13-minimal{a} qemu-utils{a} readline-common{a} sensible-utils{a} sgml-base{a} smartmontools{a} subunit{a} tzdata{a} wget{a} x11-common{a} xclip{a} xml-core{a} zlib1g-dev{a} 
The following packages are RECOMMENDED but will NOT be installed:
  autopkgtest gir1.2-glib-2.0 javascript-common krb5-locales libarchive-cpio-perl libglib2.0-data libgpg-error-l10n libltdl-dev libmail-sendmail-perl libpaper-utils linux-sysctl-defaults madison-lite openipmi powermgmt-base pristine-tar psmisc publicsuffix python3-bs4 python3-cssselect python3-gi python3-h2 python3-html5lib python3-httpcore python3-httpx python3-openssl python3-pastescript python3-pil python3-pygments python3-pyinotify qemu-block-extra shared-mime-info usb.ids xauth xdg-user-dirs 
0 packages upgraded, 266 newly installed, 0 to remove and 0 not upgraded.
Need to get 97.5 MB of archives. After unpacking 410 MB will be used.
Writing extended state information...
Get: 1 http://deb.debian.org/debian unstable/main i386 freeipmi-common all 1.6.13-3 [355 kB]
Get: 2 http://deb.debian.org/debian unstable/main i386 libgpg-error0 i386 1.51-3 [87.3 kB]
Get: 3 http://deb.debian.org/debian unstable/main i386 libgcrypt20 i386 1.11.0-7 [799 kB]
Get: 4 http://deb.debian.org/debian unstable/main i386 libfreeipmi17 i386 1.6.13-3 [957 kB]
Get: 5 http://deb.debian.org/debian unstable/main i386 readline-common all 8.2-6 [69.4 kB]
Get: 6 http://deb.debian.org/debian unstable/main i386 libreadline8t64 i386 8.2-6 [173 kB]
Get: 7 http://deb.debian.org/debian unstable/main i386 ipmitool i386 1.8.19-7.1 [1986 kB]
Get: 8 http://deb.debian.org/debian unstable/main i386 libconfig9 i386 1.5-0.4+b2 [31.2 kB]
Get: 9 http://deb.debian.org/debian unstable/main i386 libnl-3-200 i386 3.7.0-0.3+b1 [62.3 kB]
Get: 10 http://deb.debian.org/debian unstable/main i386 lldpad i386 1.1.1-1 [262 kB]
Get: 11 http://deb.debian.org/debian unstable/main i386 libpython3.12-minimal i386 3.12.8-3 [816 kB]
Get: 12 http://deb.debian.org/debian unstable/main i386 libexpat1 i386 2.6.4-1 [107 kB]
Get: 13 http://deb.debian.org/debian unstable/main i386 python3.12-minimal i386 3.12.8-3 [2239 kB]
Get: 14 http://deb.debian.org/debian unstable/main i386 python3-minimal i386 3.12.8-1 [26.9 kB]
Get: 15 http://deb.debian.org/debian unstable/main i386 media-types all 10.1.0 [26.9 kB]
Get: 16 http://deb.debian.org/debian unstable/main i386 netbase all 6.4 [12.8 kB]
Get: 17 http://deb.debian.org/debian unstable/main i386 tzdata all 2024b-4 [256 kB]
Get: 18 http://deb.debian.org/debian unstable/main i386 libffi8 i386 3.4.6-1 [21.2 kB]
Get: 19 http://deb.debian.org/debian unstable/main i386 libkrb5support0 i386 1.21.3-3 [34.9 kB]
Get: 20 http://deb.debian.org/debian unstable/main i386 libcom-err2 i386 1.47.2-1 [24.3 kB]
Get: 21 http://deb.debian.org/debian unstable/main i386 libk5crypto3 i386 1.21.3-3 [83.6 kB]
Get: 22 http://deb.debian.org/debian unstable/main i386 libkeyutils1 i386 1.6.3-4 [9600 B]
Get: 23 http://deb.debian.org/debian unstable/main i386 libkrb5-3 i386 1.21.3-3 [350 kB]
Get: 24 http://deb.debian.org/debian unstable/main i386 libgssapi-krb5-2 i386 1.21.3-3 [146 kB]
Get: 25 http://deb.debian.org/debian unstable/main i386 libtirpc-common all 1.3.4+ds-1.3 [10.9 kB]
Get: 26 http://deb.debian.org/debian unstable/main i386 libtirpc3t64 i386 1.3.4+ds-1.3+b1 [90.5 kB]
Get: 27 http://deb.debian.org/debian unstable/main i386 libnsl2 i386 1.3.0-3+b3 [42.7 kB]
Get: 28 http://deb.debian.org/debian unstable/main i386 libpython3.12-stdlib i386 3.12.8-3 [1968 kB]
Get: 29 http://deb.debian.org/debian unstable/main i386 python3.12 i386 3.12.8-3 [677 kB]
Get: 30 http://deb.debian.org/debian unstable/main i386 libpython3-stdlib i386 3.12.8-1 [9792 B]
Get: 31 http://deb.debian.org/debian unstable/main i386 python3 i386 3.12.8-1 [27.9 kB]
Get: 32 http://deb.debian.org/debian unstable/main i386 libpython3.13-minimal i386 3.13.1-3 [858 kB]
Get: 33 http://deb.debian.org/debian unstable/main i386 python3.13-minimal i386 3.13.1-3 [2264 kB]
Get: 34 http://deb.debian.org/debian unstable/main i386 sgml-base all 1.31 [15.4 kB]
Get: 35 http://deb.debian.org/debian unstable/main i386 libproc2-0 i386 2:4.0.4-6 [65.7 kB]
Get: 36 http://deb.debian.org/debian unstable/main i386 procps i386 2:4.0.4-6 [876 kB]
Get: 37 http://deb.debian.org/debian unstable/main i386 sensible-utils all 0.0.24 [24.8 kB]
Get: 38 http://deb.debian.org/debian unstable/main i386 openssl i386 3.3.2-2 [1387 kB]
Get: 39 http://deb.debian.org/debian unstable/main i386 ca-certificates all 20241223 [164 kB]
Get: 40 http://deb.debian.org/debian unstable/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB]
Get: 41 http://deb.debian.org/debian unstable/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB]
Get: 42 http://deb.debian.org/debian unstable/main i386 file i386 1:5.45-3+b1 [43.2 kB]
Get: 43 http://deb.debian.org/debian unstable/main i386 gettext-base i386 0.22.5-3 [201 kB]
Get: 44 http://deb.debian.org/debian unstable/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB]
Get: 45 http://deb.debian.org/debian unstable/main i386 groff-base i386 1.23.0-7 [1199 kB]
Get: 46 http://deb.debian.org/debian unstable/main i386 bsdextrautils i386 2.40.2-13 [95.9 kB]
Get: 47 http://deb.debian.org/debian unstable/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB]
Get: 48 http://deb.debian.org/debian unstable/main i386 man-db i386 2.13.0-1 [1428 kB]
Get: 49 http://deb.debian.org/debian unstable/main i386 libkmod2 i386 33+20240816-2 [68.0 kB]
Get: 50 http://deb.debian.org/debian unstable/main i386 pci.ids all 0.0~2024.11.25-1 [263 kB]
Get: 51 http://deb.debian.org/debian unstable/main i386 libpci3 i386 1:3.13.0-1+b1 [79.2 kB]
Get: 52 http://deb.debian.org/debian unstable/main i386 pciutils i386 1:3.13.0-1+b1 [134 kB]
Get: 53 http://deb.debian.org/debian unstable/main i386 libunistring5 i386 1.3-1 [458 kB]
Get: 54 http://deb.debian.org/debian unstable/main i386 libidn2-0 i386 2.3.7-2+b1 [130 kB]
Get: 55 http://deb.debian.org/debian unstable/main i386 libp11-kit0 i386 0.25.5-3 [423 kB]
Get: 56 http://deb.debian.org/debian unstable/main i386 libtasn1-6 i386 4.19.0-3+b3 [51.1 kB]
Get: 57 http://deb.debian.org/debian unstable/main i386 libgnutls30t64 i386 3.8.8-2 [1451 kB]
Get: 58 http://deb.debian.org/debian unstable/main i386 libpsl5t64 i386 0.21.2-1.1+b1 [57.7 kB]
Get: 59 http://deb.debian.org/debian unstable/main i386 wget i386 1.24.5-2 [996 kB]
Get: 60 http://deb.debian.org/debian unstable/main i386 m4 i386 1.4.19-4 [293 kB]
Get: 61 http://deb.debian.org/debian unstable/main i386 autoconf all 2.72-3 [493 kB]
Get: 62 http://deb.debian.org/debian unstable/main i386 autotools-dev all 20220109.1 [51.6 kB]
Get: 63 http://deb.debian.org/debian unstable/main i386 automake all 1:1.16.5-1.3 [823 kB]
Get: 64 http://deb.debian.org/debian unstable/main i386 autopoint all 0.22.5-3 [723 kB]
Get: 65 http://deb.debian.org/debian unstable/main i386 libdebhelper-perl all 13.23 [90.6 kB]
Get: 66 http://deb.debian.org/debian unstable/main i386 libtool all 2.4.7-8 [517 kB]
Get: 67 http://deb.debian.org/debian unstable/main i386 dh-autoreconf all 20 [17.1 kB]
Get: 68 http://deb.debian.org/debian unstable/main i386 libarchive-zip-perl all 1.68-1 [104 kB]
Get: 69 http://deb.debian.org/debian unstable/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB]
Get: 70 http://deb.debian.org/debian unstable/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B]
Get: 71 http://deb.debian.org/debian unstable/main i386 libelf1t64 i386 0.192-4 [195 kB]
Get: 72 http://deb.debian.org/debian unstable/main i386 dwz i386 0.15-1+b1 [116 kB]
Get: 73 http://deb.debian.org/debian unstable/main i386 libicu72 i386 72.1-5+b1 [9583 kB]
Get: 74 http://deb.debian.org/debian unstable/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB]
Get: 75 http://deb.debian.org/debian unstable/main i386 gettext i386 0.22.5-3 [1631 kB]
Get: 76 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB]
Get: 77 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB]
Get: 78 http://deb.debian.org/debian unstable/main i386 debhelper all 13.23 [919 kB]
Get: 79 http://deb.debian.org/debian unstable/main i386 python3-autocommand all 2.2.2-3 [13.6 kB]
Get: 80 http://deb.debian.org/debian unstable/main i386 python3-more-itertools all 10.5.0-1 [63.8 kB]
Get: 81 http://deb.debian.org/debian unstable/main i386 python3-typing-extensions all 4.12.2-2 [73.0 kB]
Get: 82 http://deb.debian.org/debian unstable/main i386 python3-typeguard all 4.4.1-1 [37.0 kB]
Get: 83 http://deb.debian.org/debian unstable/main i386 python3-inflect all 7.3.1-2 [32.4 kB]
Get: 84 http://deb.debian.org/debian unstable/main i386 python3-jaraco.context all 6.0.0-1 [7984 B]
Get: 85 http://deb.debian.org/debian unstable/main i386 python3-jaraco.functools all 4.1.0-1 [12.0 kB]
Get: 86 http://deb.debian.org/debian unstable/main i386 python3-pkg-resources all 75.6.0-1 [222 kB]
Get: 87 http://deb.debian.org/debian unstable/main i386 python3-jaraco.text all 4.0.0-1 [11.4 kB]
Get: 88 http://deb.debian.org/debian unstable/main i386 python3-zipp all 3.21.0-1 [10.6 kB]
Get: 89 http://deb.debian.org/debian unstable/main i386 python3-setuptools all 75.6.0-1 [720 kB]
Get: 90 http://deb.debian.org/debian unstable/main i386 dh-python all 6.20241217 [113 kB]
Get: 91 http://deb.debian.org/debian unstable/main i386 xml-core all 0.19 [20.1 kB]
Get: 92 http://deb.debian.org/debian unstable/main i386 docutils-common all 0.21.2+dfsg-2 [128 kB]
Get: 93 http://deb.debian.org/debian unstable/main i386 libmnl0 i386 1.0.5-3 [12.3 kB]
Get: 94 http://deb.debian.org/debian unstable/main i386 ethtool i386 1:6.11-1 [217 kB]
Get: 95 http://deb.debian.org/debian unstable/main i386 hdparm i386 9.65+ds-1.1 [110 kB]
Get: 96 http://deb.debian.org/debian unstable/main i386 ieee-data all 20240722 [2221 kB]
Get: 97 http://deb.debian.org/debian unstable/main i386 libonig5 i386 6.9.9-1+b1 [195 kB]
Get: 98 http://deb.debian.org/debian unstable/main i386 libjq1 i386 1.7.1-3+b1 [198 kB]
Get: 99 http://deb.debian.org/debian unstable/main i386 jq i386 1.7.1-3+b1 [79.2 kB]
Get: 100 http://deb.debian.org/debian unstable/main i386 libabsl20230802 i386 20230802.1-4 [521 kB]
Get: 101 http://deb.debian.org/debian unstable/main i386 libaio1t64 i386 0.3.113-8+b1 [15.3 kB]
Get: 102 http://deb.debian.org/debian unstable/main i386 libcares2 i386 1.34.4-2.1 [113 kB]
Get: 103 http://deb.debian.org/debian unstable/main i386 libev4t64 i386 1:4.33-2.1+b1 [44.1 kB]
Get: 104 http://deb.debian.org/debian unstable/main i386 libexpat1-dev i386 2.6.4-1 [165 kB]
Get: 105 http://deb.debian.org/debian unstable/main i386 libffi-dev i386 3.4.6-1 [57.8 kB]
Get: 106 http://deb.debian.org/debian unstable/main i386 libglib2.0-0t64 i386 2.82.4-1 [1572 kB]
Get: 107 http://deb.debian.org/debian unstable/main i386 x11-common all 1:7.7+23.1 [216 kB]
Get: 108 http://deb.debian.org/debian unstable/main i386 libice6 i386 2:1.1.1-1 [67.8 kB]
Get: 109 http://deb.debian.org/debian unstable/main i386 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB]
Get: 110 http://deb.debian.org/debian unstable/main i386 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [116 kB]
Get: 111 http://deb.debian.org/debian unstable/main i386 libjs-sphinxdoc all 8.1.3-3 [30.4 kB]
Get: 112 http://deb.debian.org/debian unstable/main i386 libnuma1 i386 2.0.18-1+b1 [23.9 kB]
Get: 113 http://deb.debian.org/debian unstable/main i386 libprotobuf32t64 i386 3.21.12-10+b1 [1066 kB]
Get: 114 http://deb.debian.org/debian unstable/main i386 libpython3.12t64 i386 3.12.8-3 [2171 kB]
Get: 115 http://deb.debian.org/debian unstable/main i386 zlib1g-dev i386 1:1.3.dfsg+really1.3.1-1+b1 [916 kB]
Get: 116 http://deb.debian.org/debian unstable/main i386 libpython3.12-dev i386 3.12.8-3 [5296 kB]
Get: 117 http://deb.debian.org/debian unstable/main i386 libpython3-dev i386 3.12.8-1 [10.1 kB]
Get: 118 http://deb.debian.org/debian unstable/main i386 libpython3.13-stdlib i386 3.13.1-3 [1980 kB]
Get: 119 http://deb.debian.org/debian unstable/main i386 libpython3.13 i386 3.13.1-3 [2199 kB]
Get: 120 http://deb.debian.org/debian unstable/main i386 libpython3.13-dev i386 3.13.1-3 [5191 kB]
Get: 121 http://deb.debian.org/debian unstable/main i386 libpython3-all-dev i386 3.12.8-1 [1068 B]
Get: 122 http://deb.debian.org/debian unstable/main i386 libre2-11 i386 20240501-3+b1 [202 kB]
Get: 123 http://deb.debian.org/debian unstable/main i386 libsm6 i386 2:1.2.4-1 [35.9 kB]
Get: 124 http://deb.debian.org/debian unstable/main i386 libsubunit-perl all 1.4.2-3 [5724 B]
Get: 125 http://deb.debian.org/debian unstable/main i386 liburing2 i386 2.8-1 [28.9 kB]
Get: 126 http://deb.debian.org/debian unstable/main i386 libxau6 i386 1:1.0.11-1 [20.7 kB]
Get: 127 http://deb.debian.org/debian unstable/main i386 libxdmcp6 i386 1:1.1.5-1 [28.2 kB]
Get: 128 http://deb.debian.org/debian unstable/main i386 libxcb1 i386 1.17.0-2+b1 [148 kB]
Get: 129 http://deb.debian.org/debian unstable/main i386 libx11-data all 2:1.8.10-2 [337 kB]
Get: 130 http://deb.debian.org/debian unstable/main i386 libx11-6 i386 2:1.8.10-2 [834 kB]
Get: 131 http://deb.debian.org/debian unstable/main i386 libxext6 i386 2:1.3.4-1+b2 [52.6 kB]
Get: 132 http://deb.debian.org/debian unstable/main i386 libxt6t64 i386 1:1.2.1-1.2+b1 [193 kB]
Get: 133 http://deb.debian.org/debian unstable/main i386 libxmu6 i386 2:1.1.3-3+b3 [60.9 kB]
Get: 134 http://deb.debian.org/debian unstable/main i386 libxslt1.1 i386 1.1.35-1.1+b1 [243 kB]
Get: 135 http://deb.debian.org/debian unstable/main i386 libyaml-0-2 i386 0.2.5-2 [55.8 kB]
Get: 136 http://deb.debian.org/debian unstable/main i386 lsb-release all 12.1-1 [5912 B]
Get: 137 http://deb.debian.org/debian unstable/main i386 lshw i386 02.19.git.2021.06.19.996aaad9c7-2.1 [359 kB]
Get: 138 http://deb.debian.org/debian unstable/main i386 python3-wheel all 0.45.1-1 [56.7 kB]
Get: 139 http://deb.debian.org/debian unstable/main i386 python3-pip all 24.3.1+dfsg-1 [1441 kB]
Get: 140 http://deb.debian.org/debian unstable/main i386 openstack-pkg-tools all 132 [96.6 kB]
Get: 141 http://deb.debian.org/debian unstable/main i386 python-babel-localedata all 2.16.0-1 [5696 kB]
Get: 142 http://deb.debian.org/debian unstable/main i386 python3.13 i386 3.13.1-3 [740 kB]
Get: 143 http://deb.debian.org/debian unstable/main i386 python3-all i386 3.12.8-1 [1048 B]
Get: 144 http://deb.debian.org/debian unstable/main i386 python3.12-dev i386 3.12.8-3 [505 kB]
Get: 145 http://deb.debian.org/debian unstable/main i386 python3-dev i386 3.12.8-1 [26.1 kB]
Get: 146 http://deb.debian.org/debian unstable/main i386 python3.13-dev i386 3.13.1-3 [505 kB]
Get: 147 http://deb.debian.org/debian unstable/main i386 python3-all-dev i386 3.12.8-1 [1072 B]
Get: 148 http://deb.debian.org/debian unstable/main i386 python3-async-timeout all 5.0.1-1 [8324 B]
Get: 149 http://deb.debian.org/debian unstable/main i386 python3-autopage all 0.4.0-4 [12.9 kB]
Get: 150 http://deb.debian.org/debian unstable/main i386 python3-babel all 2.16.0-1 [114 kB]
Get: 151 http://deb.debian.org/debian unstable/main i386 python3-bcrypt i386 4.2.0-2.1 [248 kB]
Get: 152 http://deb.debian.org/debian unstable/main i386 python3-blinker all 1.9.0-1 [12.6 kB]
Get: 153 http://deb.debian.org/debian unstable/main i386 python3-certifi all 2024.8.30+dfsg-1 [9576 B]
Get: 154 http://deb.debian.org/debian unstable/main i386 python3-cffi-backend i386 1.17.1-2+b1 [95.5 kB]
Get: 155 http://deb.debian.org/debian unstable/main i386 python3-chardet all 5.2.0+dfsg-1 [107 kB]
Get: 156 http://deb.debian.org/debian unstable/main i386 python3-charset-normalizer i386 3.4.0-1+b1 [139 kB]
Get: 157 http://deb.debian.org/debian unstable/main i386 python3-wcwidth all 0.2.13+dfsg1-1 [24.9 kB]
Get: 158 http://deb.debian.org/debian unstable/main i386 xclip i386 0.13-4 [21.1 kB]
Get: 159 http://deb.debian.org/debian unstable/main i386 python3-pyperclip all 1.8.2-2 [13.2 kB]
Get: 160 http://deb.debian.org/debian unstable/main i386 python3-cmd2 all 2.5.7+ds-1 [148 kB]
Get: 161 http://deb.debian.org/debian unstable/main i386 python3-roman all 4.2-1 [10.4 kB]
Get: 162 http://deb.debian.org/debian unstable/main i386 python3-docutils all 0.21.2+dfsg-2 [403 kB]
Get: 163 http://deb.debian.org/debian unstable/main i386 python3-pbr all 6.1.0-4 [56.6 kB]
Get: 164 http://deb.debian.org/debian unstable/main i386 python3-prettytable all 3.12.0-1 [39.5 kB]
Get: 165 http://deb.debian.org/debian unstable/main i386 python3-stevedore all 5.3.0-4 [21.0 kB]
Get: 166 http://deb.debian.org/debian unstable/main i386 python3-yaml i386 6.0.2-1+b1 [173 kB]
Get: 167 http://deb.debian.org/debian unstable/main i386 python3-cliff all 4.7.0-3 [42.5 kB]
Get: 168 http://deb.debian.org/debian unstable/main i386 python3-coverage i386 7.6.0+dfsg1-2+b1 [177 kB]
Get: 169 http://deb.debian.org/debian unstable/main i386 python3-cryptography i386 43.0.0-1 [975 kB]
Get: 170 http://deb.debian.org/debian unstable/main i386 python3-dateutil all 2.9.0-3 [79.3 kB]
Get: 171 http://deb.debian.org/debian unstable/main i386 python3-wrapt i386 1.15.0-4 [44.1 kB]
Get: 172 http://deb.debian.org/debian unstable/main i386 python3-debtcollector all 3.0.0-3 [13.1 kB]
Get: 173 http://deb.debian.org/debian unstable/main i386 python3-decorator all 5.1.1-5 [15.1 kB]
Get: 174 http://deb.debian.org/debian unstable/main i386 python3-deprecated all 1.2.15-1 [14.5 kB]
Get: 175 http://deb.debian.org/debian unstable/main i386 python3-packaging all 24.2-1 [55.3 kB]
Get: 176 http://deb.debian.org/debian unstable/main i386 python3-deprecation all 2.1.0-3 [14.5 kB]
Get: 177 http://deb.debian.org/debian unstable/main i386 python3-dnspython all 2.7.0-1 [164 kB]
Get: 178 http://deb.debian.org/debian unstable/main i386 python3-markupsafe i386 2.1.5-1+b2 [13.9 kB]
Get: 179 http://deb.debian.org/debian unstable/main i386 python3-mako all 1.3.6-1 [83.1 kB]
Get: 180 http://deb.debian.org/debian unstable/main i386 python3-dogpile.cache all 1.3.3-1 [46.0 kB]
Get: 181 http://deb.debian.org/debian unstable/main i386 python3-protobuf i386 3.21.12-10+b1 [278 kB]
Get: 182 http://deb.debian.org/debian unstable/main i386 python3-grpcio i386 1.51.1-5+b1 [2929 kB]
Get: 183 http://deb.debian.org/debian unstable/main i386 python3-six all 1.17.0-1 [16.5 kB]
Get: 184 http://deb.debian.org/debian unstable/main i386 python3-tenacity all 8.4.2+really8.4.1-2 [46.0 kB]
Get: 185 http://deb.debian.org/debian unstable/main i386 python3-etcd3 all 0.12.0-3 [31.0 kB]
Get: 186 http://deb.debian.org/debian unstable/main i386 python3-greenlet i386 3.1.0-1+b1 [183 kB]
Get: 187 http://deb.debian.org/debian unstable/main i386 python3-futurist all 3.0.0-3 [23.8 kB]
Get: 188 http://deb.debian.org/debian unstable/main i386 python3-idna all 3.8-2 [41.6 kB]
Get: 189 http://deb.debian.org/debian unstable/main i386 python3-urllib3 all 2.2.3-4 [112 kB]
Get: 190 http://deb.debian.org/debian unstable/main i386 python3-requests all 2.32.3+dfsg-1 [71.9 kB]
Get: 191 http://deb.debian.org/debian unstable/main i386 python3-etcd3gw all 2.4.2-3 [13.9 kB]
Get: 192 http://deb.debian.org/debian unstable/main i386 python3-eventlet all 0.36.1-11 [308 kB]
Get: 193 http://deb.debian.org/debian unstable/main i386 python3-extras all 1.0.0-6 [7528 B]
Get: 194 http://deb.debian.org/debian unstable/main i386 python3-monotonic all 1.6-3 [5340 B]
Get: 195 http://deb.debian.org/debian unstable/main i386 python3-fasteners all 0.18-2 [14.0 kB]
Get: 196 http://deb.debian.org/debian unstable/main i386 python3-testtools all 2.7.2-4 [122 kB]
Get: 197 http://deb.debian.org/debian unstable/main i386 python3-fixtures all 4.1.0-3 [34.2 kB]
Get: 198 http://deb.debian.org/debian unstable/main i386 python3-flexcache all 0.3-2 [13.5 kB]
Get: 199 http://deb.debian.org/debian unstable/main i386 python3-flexparser all 0.4-1 [42.9 kB]
Get: 200 http://deb.debian.org/debian unstable/main i386 python3-zope.event all 5.0-0.1 [8164 B]
Get: 201 http://deb.debian.org/debian unstable/main i386 python3-zope.interface i386 7.2-1 [152 kB]
Get: 202 http://deb.debian.org/debian unstable/main i386 python3-gevent i386 24.11.1-1 [983 kB]
Get: 203 http://deb.debian.org/debian unstable/main i386 python3-ptyprocess all 0.7.0-6 [14.5 kB]
Get: 204 http://deb.debian.org/debian unstable/main i386 python3-pexpect all 4.9-3 [55.6 kB]
Get: 205 http://deb.debian.org/debian unstable/main i386 smartmontools i386 7.4-2 [639 kB]
Get: 206 http://deb.debian.org/debian unstable/main i386 python3-hardware all 0.30.0-4 [57.0 kB]
Get: 207 http://deb.debian.org/debian unstable/main i386 python3-ifaddr all 0.2.0-1 [10.2 kB]
Get: 208 http://deb.debian.org/debian unstable/main i386 python3-netaddr all 0.10.1-2 [339 kB]
Get: 209 http://deb.debian.org/debian unstable/main i386 python3-oslo.i18n all 6.4.0-3 [19.1 kB]
Get: 210 http://deb.debian.org/debian unstable/main i386 python3-oslo.context all 5.6.0-3 [13.3 kB]
Get: 211 http://deb.debian.org/debian unstable/main i386 python3-msgpack i386 1.0.3-3+b3 [109 kB]
Get: 212 http://deb.debian.org/debian unstable/main i386 python3-iso8601 all 2.1.0-2 [12.1 kB]
Get: 213 http://deb.debian.org/debian unstable/main i386 python3-netifaces i386 0.11.0-2+b5 [17.9 kB]
Get: 214 http://deb.debian.org/debian unstable/main i386 python3-pyparsing all 3.1.2-1 [146 kB]
Get: 215 http://deb.debian.org/debian unstable/main i386 python3-tz all 2024.2-1 [31.0 kB]
Get: 216 http://deb.debian.org/debian unstable/main i386 python3-oslo.utils all 7.3.0-4 [81.4 kB]
Get: 217 http://deb.debian.org/debian unstable/main i386 python3-oslo.serialization all 5.5.0-3 [14.8 kB]
Get: 218 http://deb.debian.org/debian unstable/main i386 python3-pyasyncore all 1.0.2-3 [10.1 kB]
Get: 219 http://deb.debian.org/debian unstable/main i386 python3-oslo.log all 6.1.2-4 [43.0 kB]
Get: 220 http://deb.debian.org/debian unstable/main i386 python3-rfc3986 all 2.0.0-3 [21.6 kB]
Get: 221 http://deb.debian.org/debian unstable/main i386 python3-oslo.config all 1:9.6.0-6 [108 kB]
Get: 222 http://deb.debian.org/debian unstable/main i386 python3-oslo.concurrency all 6.1.0-4 [28.0 kB]
Get: 223 http://deb.debian.org/debian unstable/main i386 python3-legacy-cgi all 2.6.1-2 [16.1 kB]
Get: 224 http://deb.debian.org/debian unstable/main i386 python3-webob all 1:1.8.7-3 [88.3 kB]
Get: 225 http://deb.debian.org/debian unstable/main i386 python3-zeroconf all 0.136.2-1 [158 kB]
Get: 226 http://deb.debian.org/debian unstable/main i386 python3-ironic-lib all 6.2.0-3 [58.6 kB]
Get: 227 http://deb.debian.org/debian unstable/main i386 python3-jinja2 all 3.1.3-1.1 [120 kB]
Get: 228 http://deb.debian.org/debian unstable/main i386 python3-jmespath all 1.0.1-1 [21.1 kB]
Get: 229 http://deb.debian.org/debian unstable/main i386 python3-json-pointer all 2.4-3 [14.6 kB]
Get: 230 http://deb.debian.org/debian unstable/main i386 python3-jsonpatch all 1.32-5 [12.1 kB]
Get: 231 http://deb.debian.org/debian unstable/main i386 python3-jwt all 2.7.0-1 [29.7 kB]
Get: 232 http://deb.debian.org/debian unstable/main i386 python3-kerberos i386 1.1.14-3.1+b10 [21.2 kB]
Get: 233 http://deb.debian.org/debian unstable/main i386 python3-pure-sasl all 0.5.1+dfsg1-5 [11.9 kB]
Get: 234 http://deb.debian.org/debian unstable/main i386 python3-kazoo all 2.9.0-2 [115 kB]
Get: 235 http://deb.debian.org/debian unstable/main i386 python3-lxml i386 5.3.0-1+b1 [1586 kB]
Get: 236 http://deb.debian.org/debian unstable/main i386 python3-oauthlib all 3.2.2-2 [95.5 kB]
Get: 237 http://deb.debian.org/debian unstable/main i386 python3-os-service-types all 1.7.0-5 [12.6 kB]
Get: 238 http://deb.debian.org/debian unstable/main i386 python3-keystoneauth1 all 5.8.0-3 [157 kB]
Get: 239 http://deb.debian.org/debian unstable/main i386 python3-platformdirs all 4.3.6-1 [16.6 kB]
Get: 240 http://deb.debian.org/debian unstable/main i386 python3-requestsexceptions all 1.4.0-5 [3860 B]
Get: 241 http://deb.debian.org/debian unstable/main i386 python3-openstacksdk all 4.0.1-3 [671 kB]
Get: 242 http://deb.debian.org/debian unstable/main i386 python3-os-client-config all 2.1.0-3 [17.5 kB]
Get: 243 http://deb.debian.org/debian unstable/main i386 python3-tempita all 0.6.0-1 [14.6 kB]
Get: 244 http://deb.debian.org/debian unstable/main i386 python3-paste all 3.10.1-1 [222 kB]
Get: 245 http://deb.debian.org/debian unstable/main i386 python3-pastedeploy-tpl all 3.1-1 [8268 B]
Get: 246 http://deb.debian.org/debian unstable/main i386 python3-pastedeploy all 3.1-1 [18.3 kB]
Get: 247 http://deb.debian.org/debian unstable/main i386 python3-repoze.lru all 0.7-3 [12.2 kB]
Get: 248 http://deb.debian.org/debian unstable/main i386 python3-routes all 2.5.1-6 [98.3 kB]
Get: 249 http://deb.debian.org/debian unstable/main i386 python3-yappi i386 1.6.10-2 [33.1 kB]
Get: 250 http://deb.debian.org/debian unstable/main i386 python3-oslo.service all 3.5.0-3 [43.5 kB]
Get: 251 http://deb.debian.org/debian unstable/main i386 python3-tomlkit all 0.13.2-1 [42.7 kB]
Get: 252 http://deb.debian.org/debian unstable/main i386 python3-voluptuous all 0.14.2-1 [45.8 kB]
Get: 253 http://deb.debian.org/debian unstable/main i386 python3-subunit all 1.4.2-3 [66.4 kB]
Get: 254 http://deb.debian.org/debian unstable/main i386 subunit all 1.4.2-3 [5248 B]
Get: 255 http://deb.debian.org/debian unstable/main i386 python3-stestr all 4.1.0-3 [56.9 kB]
Get: 256 http://deb.debian.org/debian unstable/main i386 python3-oslotest all 1:5.0.0-4 [17.2 kB]
Get: 257 http://deb.debian.org/debian unstable/main i386 python3-pint all 0.24.4-1 [225 kB]
Get: 258 http://deb.debian.org/debian unstable/main i386 python3-psutil i386 5.9.8-2 [226 kB]
Get: 259 http://deb.debian.org/debian unstable/main i386 python3-pymemcache all 4.0.0-8 [45.0 kB]
Get: 260 http://deb.debian.org/debian unstable/main i386 python3-pymysql all 1.1.1-2 [43.0 kB]
Get: 261 http://deb.debian.org/debian unstable/main i386 python3-pyudev all 0.24.3-1 [32.6 kB]
Get: 262 http://deb.debian.org/debian unstable/main i386 python3-redis all 4.3.4-4 [185 kB]
Get: 263 http://deb.debian.org/debian unstable/main i386 python3-zake all 0.2.2-8 [15.6 kB]
Get: 264 http://deb.debian.org/debian unstable/main i386 python3-tooz all 6.3.0-4 [52.6 kB]
Get: 265 http://deb.debian.org/debian unstable/main i386 python3-werkzeug all 3.1.3-2 [207 kB]
Get: 266 http://deb.debian.org/debian unstable/main i386 qemu-utils i386 1:9.2.0+ds-3+b1 [2055 kB]
Fetched 97.5 MB in 2s (43.0 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 ... 19838 files and directories currently installed.)
Preparing to unpack .../00-freeipmi-common_1.6.13-3_all.deb ...
Unpacking freeipmi-common (1.6.13-3) ...
Selecting previously unselected package libgpg-error0:i386.
Preparing to unpack .../01-libgpg-error0_1.51-3_i386.deb ...
Unpacking libgpg-error0:i386 (1.51-3) ...
Selecting previously unselected package libgcrypt20:i386.
Preparing to unpack .../02-libgcrypt20_1.11.0-7_i386.deb ...
Unpacking libgcrypt20:i386 (1.11.0-7) ...
Selecting previously unselected package libfreeipmi17.
Preparing to unpack .../03-libfreeipmi17_1.6.13-3_i386.deb ...
Unpacking libfreeipmi17 (1.6.13-3) ...
Selecting previously unselected package readline-common.
Preparing to unpack .../04-readline-common_8.2-6_all.deb ...
Unpacking readline-common (8.2-6) ...
Selecting previously unselected package libreadline8t64:i386.
Preparing to unpack .../05-libreadline8t64_8.2-6_i386.deb ...
Adding 'diversion of /lib/i386-linux-gnu/libhistory.so.8 to /lib/i386-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libhistory.so.8.2 to /lib/i386-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libreadline.so.8 to /lib/i386-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libreadline.so.8.2 to /lib/i386-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64'
Unpacking libreadline8t64:i386 (8.2-6) ...
Selecting previously unselected package ipmitool.
Preparing to unpack .../06-ipmitool_1.8.19-7.1_i386.deb ...
Unpacking ipmitool (1.8.19-7.1) ...
Selecting previously unselected package libconfig9:i386.
Preparing to unpack .../07-libconfig9_1.5-0.4+b2_i386.deb ...
Unpacking libconfig9:i386 (1.5-0.4+b2) ...
Selecting previously unselected package libnl-3-200:i386.
Preparing to unpack .../08-libnl-3-200_3.7.0-0.3+b1_i386.deb ...
Unpacking libnl-3-200:i386 (3.7.0-0.3+b1) ...
Selecting previously unselected package lldpad.
Preparing to unpack .../09-lldpad_1.1.1-1_i386.deb ...
Unpacking lldpad (1.1.1-1) ...
Selecting previously unselected package libpython3.12-minimal:i386.
Preparing to unpack .../10-libpython3.12-minimal_3.12.8-3_i386.deb ...
Unpacking libpython3.12-minimal:i386 (3.12.8-3) ...
Selecting previously unselected package libexpat1:i386.
Preparing to unpack .../11-libexpat1_2.6.4-1_i386.deb ...
Unpacking libexpat1:i386 (2.6.4-1) ...
Selecting previously unselected package python3.12-minimal.
Preparing to unpack .../12-python3.12-minimal_3.12.8-3_i386.deb ...
Unpacking python3.12-minimal (3.12.8-3) ...
Setting up libpython3.12-minimal:i386 (3.12.8-3) ...
Setting up libexpat1:i386 (2.6.4-1) ...
Setting up python3.12-minimal (3.12.8-3) ...
Selecting previously unselected package python3-minimal.
(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 ... 20336 files and directories currently installed.)
Preparing to unpack .../00-python3-minimal_3.12.8-1_i386.deb ...
Unpacking python3-minimal (3.12.8-1) ...
Selecting previously unselected package media-types.
Preparing to unpack .../01-media-types_10.1.0_all.deb ...
Unpacking media-types (10.1.0) ...
Selecting previously unselected package netbase.
Preparing to unpack .../02-netbase_6.4_all.deb ...
Unpacking netbase (6.4) ...
Selecting previously unselected package tzdata.
Preparing to unpack .../03-tzdata_2024b-4_all.deb ...
Unpacking tzdata (2024b-4) ...
Selecting previously unselected package libffi8:i386.
Preparing to unpack .../04-libffi8_3.4.6-1_i386.deb ...
Unpacking libffi8:i386 (3.4.6-1) ...
Selecting previously unselected package libkrb5support0:i386.
Preparing to unpack .../05-libkrb5support0_1.21.3-3_i386.deb ...
Unpacking libkrb5support0:i386 (1.21.3-3) ...
Selecting previously unselected package libcom-err2:i386.
Preparing to unpack .../06-libcom-err2_1.47.2-1_i386.deb ...
Unpacking libcom-err2:i386 (1.47.2-1) ...
Selecting previously unselected package libk5crypto3:i386.
Preparing to unpack .../07-libk5crypto3_1.21.3-3_i386.deb ...
Unpacking libk5crypto3:i386 (1.21.3-3) ...
Selecting previously unselected package libkeyutils1:i386.
Preparing to unpack .../08-libkeyutils1_1.6.3-4_i386.deb ...
Unpacking libkeyutils1:i386 (1.6.3-4) ...
Selecting previously unselected package libkrb5-3:i386.
Preparing to unpack .../09-libkrb5-3_1.21.3-3_i386.deb ...
Unpacking libkrb5-3:i386 (1.21.3-3) ...
Selecting previously unselected package libgssapi-krb5-2:i386.
Preparing to unpack .../10-libgssapi-krb5-2_1.21.3-3_i386.deb ...
Unpacking libgssapi-krb5-2:i386 (1.21.3-3) ...
Selecting previously unselected package libtirpc-common.
Preparing to unpack .../11-libtirpc-common_1.3.4+ds-1.3_all.deb ...
Unpacking libtirpc-common (1.3.4+ds-1.3) ...
Selecting previously unselected package libtirpc3t64:i386.
Preparing to unpack .../12-libtirpc3t64_1.3.4+ds-1.3+b1_i386.deb ...
Adding 'diversion of /lib/i386-linux-gnu/libtirpc.so.3 to /lib/i386-linux-gnu/libtirpc.so.3.usr-is-merged by libtirpc3t64'
Adding 'diversion of /lib/i386-linux-gnu/libtirpc.so.3.0.0 to /lib/i386-linux-gnu/libtirpc.so.3.0.0.usr-is-merged by libtirpc3t64'
Unpacking libtirpc3t64:i386 (1.3.4+ds-1.3+b1) ...
Selecting previously unselected package libnsl2:i386.
Preparing to unpack .../13-libnsl2_1.3.0-3+b3_i386.deb ...
Unpacking libnsl2:i386 (1.3.0-3+b3) ...
Selecting previously unselected package libpython3.12-stdlib:i386.
Preparing to unpack .../14-libpython3.12-stdlib_3.12.8-3_i386.deb ...
Unpacking libpython3.12-stdlib:i386 (3.12.8-3) ...
Selecting previously unselected package python3.12.
Preparing to unpack .../15-python3.12_3.12.8-3_i386.deb ...
Unpacking python3.12 (3.12.8-3) ...
Selecting previously unselected package libpython3-stdlib:i386.
Preparing to unpack .../16-libpython3-stdlib_3.12.8-1_i386.deb ...
Unpacking libpython3-stdlib:i386 (3.12.8-1) ...
Setting up python3-minimal (3.12.8-1) ...
Selecting previously unselected package python3.
(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 ... 21372 files and directories currently installed.)
Preparing to unpack .../000-python3_3.12.8-1_i386.deb ...
Unpacking python3 (3.12.8-1) ...
Selecting previously unselected package libpython3.13-minimal:i386.
Preparing to unpack .../001-libpython3.13-minimal_3.13.1-3_i386.deb ...
Unpacking libpython3.13-minimal:i386 (3.13.1-3) ...
Selecting previously unselected package python3.13-minimal.
Preparing to unpack .../002-python3.13-minimal_3.13.1-3_i386.deb ...
Unpacking python3.13-minimal (3.13.1-3) ...
Selecting previously unselected package sgml-base.
Preparing to unpack .../003-sgml-base_1.31_all.deb ...
Unpacking sgml-base (1.31) ...
Selecting previously unselected package libproc2-0:i386.
Preparing to unpack .../004-libproc2-0_2%3a4.0.4-6_i386.deb ...
Unpacking libproc2-0:i386 (2:4.0.4-6) ...
Selecting previously unselected package procps.
Preparing to unpack .../005-procps_2%3a4.0.4-6_i386.deb ...
Unpacking procps (2:4.0.4-6) ...
Selecting previously unselected package sensible-utils.
Preparing to unpack .../006-sensible-utils_0.0.24_all.deb ...
Unpacking sensible-utils (0.0.24) ...
Selecting previously unselected package openssl.
Preparing to unpack .../007-openssl_3.3.2-2_i386.deb ...
Unpacking openssl (3.3.2-2) ...
Selecting previously unselected package ca-certificates.
Preparing to unpack .../008-ca-certificates_20241223_all.deb ...
Unpacking ca-certificates (20241223) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../009-libmagic-mgc_1%3a5.45-3+b1_i386.deb ...
Unpacking libmagic-mgc (1:5.45-3+b1) ...
Selecting previously unselected package libmagic1t64:i386.
Preparing to unpack .../010-libmagic1t64_1%3a5.45-3+b1_i386.deb ...
Unpacking libmagic1t64:i386 (1:5.45-3+b1) ...
Selecting previously unselected package file.
Preparing to unpack .../011-file_1%3a5.45-3+b1_i386.deb ...
Unpacking file (1:5.45-3+b1) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../012-gettext-base_0.22.5-3_i386.deb ...
Unpacking gettext-base (0.22.5-3) ...
Selecting previously unselected package libuchardet0:i386.
Preparing to unpack .../013-libuchardet0_0.0.8-1+b2_i386.deb ...
Unpacking libuchardet0:i386 (0.0.8-1+b2) ...
Selecting previously unselected package groff-base.
Preparing to unpack .../014-groff-base_1.23.0-7_i386.deb ...
Unpacking groff-base (1.23.0-7) ...
Selecting previously unselected package bsdextrautils.
Preparing to unpack .../015-bsdextrautils_2.40.2-13_i386.deb ...
Unpacking bsdextrautils (2.40.2-13) ...
Selecting previously unselected package libpipeline1:i386.
Preparing to unpack .../016-libpipeline1_1.5.8-1_i386.deb ...
Unpacking libpipeline1:i386 (1.5.8-1) ...
Selecting previously unselected package man-db.
Preparing to unpack .../017-man-db_2.13.0-1_i386.deb ...
Unpacking man-db (2.13.0-1) ...
Selecting previously unselected package libkmod2:i386.
Preparing to unpack .../018-libkmod2_33+20240816-2_i386.deb ...
Unpacking libkmod2:i386 (33+20240816-2) ...
Selecting previously unselected package pci.ids.
Preparing to unpack .../019-pci.ids_0.0~2024.11.25-1_all.deb ...
Unpacking pci.ids (0.0~2024.11.25-1) ...
Selecting previously unselected package libpci3:i386.
Preparing to unpack .../020-libpci3_1%3a3.13.0-1+b1_i386.deb ...
Unpacking libpci3:i386 (1:3.13.0-1+b1) ...
Selecting previously unselected package pciutils.
Preparing to unpack .../021-pciutils_1%3a3.13.0-1+b1_i386.deb ...
Unpacking pciutils (1:3.13.0-1+b1) ...
Selecting previously unselected package libunistring5:i386.
Preparing to unpack .../022-libunistring5_1.3-1_i386.deb ...
Unpacking libunistring5:i386 (1.3-1) ...
Selecting previously unselected package libidn2-0:i386.
Preparing to unpack .../023-libidn2-0_2.3.7-2+b1_i386.deb ...
Unpacking libidn2-0:i386 (2.3.7-2+b1) ...
Selecting previously unselected package libp11-kit0:i386.
Preparing to unpack .../024-libp11-kit0_0.25.5-3_i386.deb ...
Unpacking libp11-kit0:i386 (0.25.5-3) ...
Selecting previously unselected package libtasn1-6:i386.
Preparing to unpack .../025-libtasn1-6_4.19.0-3+b3_i386.deb ...
Unpacking libtasn1-6:i386 (4.19.0-3+b3) ...
Selecting previously unselected package libgnutls30t64:i386.
Preparing to unpack .../026-libgnutls30t64_3.8.8-2_i386.deb ...
Unpacking libgnutls30t64:i386 (3.8.8-2) ...
Selecting previously unselected package libpsl5t64:i386.
Preparing to unpack .../027-libpsl5t64_0.21.2-1.1+b1_i386.deb ...
Unpacking libpsl5t64:i386 (0.21.2-1.1+b1) ...
Selecting previously unselected package wget.
Preparing to unpack .../028-wget_1.24.5-2_i386.deb ...
Unpacking wget (1.24.5-2) ...
Selecting previously unselected package m4.
Preparing to unpack .../029-m4_1.4.19-4_i386.deb ...
Unpacking m4 (1.4.19-4) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../030-autoconf_2.72-3_all.deb ...
Unpacking autoconf (2.72-3) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../031-autotools-dev_20220109.1_all.deb ...
Unpacking autotools-dev (20220109.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../032-automake_1%3a1.16.5-1.3_all.deb ...
Unpacking automake (1:1.16.5-1.3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../033-autopoint_0.22.5-3_all.deb ...
Unpacking autopoint (0.22.5-3) ...
Selecting previously unselected package libdebhelper-perl.
Preparing to unpack .../034-libdebhelper-perl_13.23_all.deb ...
Unpacking libdebhelper-perl (13.23) ...
Selecting previously unselected package libtool.
Preparing to unpack .../035-libtool_2.4.7-8_all.deb ...
Unpacking libtool (2.4.7-8) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../036-dh-autoreconf_20_all.deb ...
Unpacking dh-autoreconf (20) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../037-libarchive-zip-perl_1.68-1_all.deb ...
Unpacking libarchive-zip-perl (1.68-1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../038-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../039-dh-strip-nondeterminism_1.14.0-1_all.deb ...
Unpacking dh-strip-nondeterminism (1.14.0-1) ...
Selecting previously unselected package libelf1t64:i386.
Preparing to unpack .../040-libelf1t64_0.192-4_i386.deb ...
Unpacking libelf1t64:i386 (0.192-4) ...
Selecting previously unselected package dwz.
Preparing to unpack .../041-dwz_0.15-1+b1_i386.deb ...
Unpacking dwz (0.15-1+b1) ...
Selecting previously unselected package libicu72:i386.
Preparing to unpack .../042-libicu72_72.1-5+b1_i386.deb ...
Unpacking libicu72:i386 (72.1-5+b1) ...
Selecting previously unselected package libxml2:i386.
Preparing to unpack .../043-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ...
Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Selecting previously unselected package gettext.
Preparing to unpack .../044-gettext_0.22.5-3_i386.deb ...
Unpacking gettext (0.22.5-3) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../045-intltool-debian_0.35.0+20060710.6_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.6) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../046-po-debconf_1.0.21+nmu1_all.deb ...
Unpacking po-debconf (1.0.21+nmu1) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../047-debhelper_13.23_all.deb ...
Unpacking debhelper (13.23) ...
Selecting previously unselected package python3-autocommand.
Preparing to unpack .../048-python3-autocommand_2.2.2-3_all.deb ...
Unpacking python3-autocommand (2.2.2-3) ...
Selecting previously unselected package python3-more-itertools.
Preparing to unpack .../049-python3-more-itertools_10.5.0-1_all.deb ...
Unpacking python3-more-itertools (10.5.0-1) ...
Selecting previously unselected package python3-typing-extensions.
Preparing to unpack .../050-python3-typing-extensions_4.12.2-2_all.deb ...
Unpacking python3-typing-extensions (4.12.2-2) ...
Selecting previously unselected package python3-typeguard.
Preparing to unpack .../051-python3-typeguard_4.4.1-1_all.deb ...
Unpacking python3-typeguard (4.4.1-1) ...
Selecting previously unselected package python3-inflect.
Preparing to unpack .../052-python3-inflect_7.3.1-2_all.deb ...
Unpacking python3-inflect (7.3.1-2) ...
Selecting previously unselected package python3-jaraco.context.
Preparing to unpack .../053-python3-jaraco.context_6.0.0-1_all.deb ...
Unpacking python3-jaraco.context (6.0.0-1) ...
Selecting previously unselected package python3-jaraco.functools.
Preparing to unpack .../054-python3-jaraco.functools_4.1.0-1_all.deb ...
Unpacking python3-jaraco.functools (4.1.0-1) ...
Selecting previously unselected package python3-pkg-resources.
Preparing to unpack .../055-python3-pkg-resources_75.6.0-1_all.deb ...
Unpacking python3-pkg-resources (75.6.0-1) ...
Selecting previously unselected package python3-jaraco.text.
Preparing to unpack .../056-python3-jaraco.text_4.0.0-1_all.deb ...
Unpacking python3-jaraco.text (4.0.0-1) ...
Selecting previously unselected package python3-zipp.
Preparing to unpack .../057-python3-zipp_3.21.0-1_all.deb ...
Unpacking python3-zipp (3.21.0-1) ...
Selecting previously unselected package python3-setuptools.
Preparing to unpack .../058-python3-setuptools_75.6.0-1_all.deb ...
Unpacking python3-setuptools (75.6.0-1) ...
Selecting previously unselected package dh-python.
Preparing to unpack .../059-dh-python_6.20241217_all.deb ...
Unpacking dh-python (6.20241217) ...
Selecting previously unselected package xml-core.
Preparing to unpack .../060-xml-core_0.19_all.deb ...
Unpacking xml-core (0.19) ...
Selecting previously unselected package docutils-common.
Preparing to unpack .../061-docutils-common_0.21.2+dfsg-2_all.deb ...
Unpacking docutils-common (0.21.2+dfsg-2) ...
Selecting previously unselected package libmnl0:i386.
Preparing to unpack .../062-libmnl0_1.0.5-3_i386.deb ...
Unpacking libmnl0:i386 (1.0.5-3) ...
Selecting previously unselected package ethtool.
Preparing to unpack .../063-ethtool_1%3a6.11-1_i386.deb ...
Unpacking ethtool (1:6.11-1) ...
Selecting previously unselected package hdparm.
Preparing to unpack .../064-hdparm_9.65+ds-1.1_i386.deb ...
Unpacking hdparm (9.65+ds-1.1) ...
Selecting previously unselected package ieee-data.
Preparing to unpack .../065-ieee-data_20240722_all.deb ...
Unpacking ieee-data (20240722) ...
Selecting previously unselected package libonig5:i386.
Preparing to unpack .../066-libonig5_6.9.9-1+b1_i386.deb ...
Unpacking libonig5:i386 (6.9.9-1+b1) ...
Selecting previously unselected package libjq1:i386.
Preparing to unpack .../067-libjq1_1.7.1-3+b1_i386.deb ...
Unpacking libjq1:i386 (1.7.1-3+b1) ...
Selecting previously unselected package jq.
Preparing to unpack .../068-jq_1.7.1-3+b1_i386.deb ...
Unpacking jq (1.7.1-3+b1) ...
Selecting previously unselected package libabsl20230802:i386.
Preparing to unpack .../069-libabsl20230802_20230802.1-4_i386.deb ...
Unpacking libabsl20230802:i386 (20230802.1-4) ...
Selecting previously unselected package libaio1t64:i386.
Preparing to unpack .../070-libaio1t64_0.3.113-8+b1_i386.deb ...
Unpacking libaio1t64:i386 (0.3.113-8+b1) ...
Selecting previously unselected package libcares2:i386.
Preparing to unpack .../071-libcares2_1.34.4-2.1_i386.deb ...
Unpacking libcares2:i386 (1.34.4-2.1) ...
Selecting previously unselected package libev4t64:i386.
Preparing to unpack .../072-libev4t64_1%3a4.33-2.1+b1_i386.deb ...
Unpacking libev4t64:i386 (1:4.33-2.1+b1) ...
Selecting previously unselected package libexpat1-dev:i386.
Preparing to unpack .../073-libexpat1-dev_2.6.4-1_i386.deb ...
Unpacking libexpat1-dev:i386 (2.6.4-1) ...
Selecting previously unselected package libffi-dev:i386.
Preparing to unpack .../074-libffi-dev_3.4.6-1_i386.deb ...
Unpacking libffi-dev:i386 (3.4.6-1) ...
Selecting previously unselected package libglib2.0-0t64:i386.
Preparing to unpack .../075-libglib2.0-0t64_2.82.4-1_i386.deb ...
Unpacking libglib2.0-0t64:i386 (2.82.4-1) ...
Selecting previously unselected package x11-common.
Preparing to unpack .../076-x11-common_1%3a7.7+23.1_all.deb ...
Unpacking x11-common (1:7.7+23.1) ...
Selecting previously unselected package libice6:i386.
Preparing to unpack .../077-libice6_2%3a1.1.1-1_i386.deb ...
Unpacking libice6:i386 (2:1.1.1-1) ...
Selecting previously unselected package libjs-jquery.
Preparing to unpack .../078-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ...
Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
Selecting previously unselected package libjs-underscore.
Preparing to unpack .../079-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ...
Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ...
Selecting previously unselected package libjs-sphinxdoc.
Preparing to unpack .../080-libjs-sphinxdoc_8.1.3-3_all.deb ...
Unpacking libjs-sphinxdoc (8.1.3-3) ...
Selecting previously unselected package libnuma1:i386.
Preparing to unpack .../081-libnuma1_2.0.18-1+b1_i386.deb ...
Unpacking libnuma1:i386 (2.0.18-1+b1) ...
Selecting previously unselected package libprotobuf32t64:i386.
Preparing to unpack .../082-libprotobuf32t64_3.21.12-10+b1_i386.deb ...
Unpacking libprotobuf32t64:i386 (3.21.12-10+b1) ...
Selecting previously unselected package libpython3.12t64:i386.
Preparing to unpack .../083-libpython3.12t64_3.12.8-3_i386.deb ...
Unpacking libpython3.12t64:i386 (3.12.8-3) ...
Selecting previously unselected package zlib1g-dev:i386.
Preparing to unpack .../084-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1+b1_i386.deb ...
Unpacking zlib1g-dev:i386 (1:1.3.dfsg+really1.3.1-1+b1) ...
Selecting previously unselected package libpython3.12-dev:i386.
Preparing to unpack .../085-libpython3.12-dev_3.12.8-3_i386.deb ...
Unpacking libpython3.12-dev:i386 (3.12.8-3) ...
Selecting previously unselected package libpython3-dev:i386.
Preparing to unpack .../086-libpython3-dev_3.12.8-1_i386.deb ...
Unpacking libpython3-dev:i386 (3.12.8-1) ...
Selecting previously unselected package libpython3.13-stdlib:i386.
Preparing to unpack .../087-libpython3.13-stdlib_3.13.1-3_i386.deb ...
Unpacking libpython3.13-stdlib:i386 (3.13.1-3) ...
Selecting previously unselected package libpython3.13:i386.
Preparing to unpack .../088-libpython3.13_3.13.1-3_i386.deb ...
Unpacking libpython3.13:i386 (3.13.1-3) ...
Selecting previously unselected package libpython3.13-dev:i386.
Preparing to unpack .../089-libpython3.13-dev_3.13.1-3_i386.deb ...
Unpacking libpython3.13-dev:i386 (3.13.1-3) ...
Selecting previously unselected package libpython3-all-dev:i386.
Preparing to unpack .../090-libpython3-all-dev_3.12.8-1_i386.deb ...
Unpacking libpython3-all-dev:i386 (3.12.8-1) ...
Selecting previously unselected package libre2-11:i386.
Preparing to unpack .../091-libre2-11_20240501-3+b1_i386.deb ...
Unpacking libre2-11:i386 (20240501-3+b1) ...
Selecting previously unselected package libsm6:i386.
Preparing to unpack .../092-libsm6_2%3a1.2.4-1_i386.deb ...
Unpacking libsm6:i386 (2:1.2.4-1) ...
Selecting previously unselected package libsubunit-perl.
Preparing to unpack .../093-libsubunit-perl_1.4.2-3_all.deb ...
Unpacking libsubunit-perl (1.4.2-3) ...
Selecting previously unselected package liburing2:i386.
Preparing to unpack .../094-liburing2_2.8-1_i386.deb ...
Unpacking liburing2:i386 (2.8-1) ...
Selecting previously unselected package libxau6:i386.
Preparing to unpack .../095-libxau6_1%3a1.0.11-1_i386.deb ...
Unpacking libxau6:i386 (1:1.0.11-1) ...
Selecting previously unselected package libxdmcp6:i386.
Preparing to unpack .../096-libxdmcp6_1%3a1.1.5-1_i386.deb ...
Unpacking libxdmcp6:i386 (1:1.1.5-1) ...
Selecting previously unselected package libxcb1:i386.
Preparing to unpack .../097-libxcb1_1.17.0-2+b1_i386.deb ...
Unpacking libxcb1:i386 (1.17.0-2+b1) ...
Selecting previously unselected package libx11-data.
Preparing to unpack .../098-libx11-data_2%3a1.8.10-2_all.deb ...
Unpacking libx11-data (2:1.8.10-2) ...
Selecting previously unselected package libx11-6:i386.
Preparing to unpack .../099-libx11-6_2%3a1.8.10-2_i386.deb ...
Unpacking libx11-6:i386 (2:1.8.10-2) ...
Selecting previously unselected package libxext6:i386.
Preparing to unpack .../100-libxext6_2%3a1.3.4-1+b2_i386.deb ...
Unpacking libxext6:i386 (2:1.3.4-1+b2) ...
Selecting previously unselected package libxt6t64:i386.
Preparing to unpack .../101-libxt6t64_1%3a1.2.1-1.2+b1_i386.deb ...
Unpacking libxt6t64:i386 (1:1.2.1-1.2+b1) ...
Selecting previously unselected package libxmu6:i386.
Preparing to unpack .../102-libxmu6_2%3a1.1.3-3+b3_i386.deb ...
Unpacking libxmu6:i386 (2:1.1.3-3+b3) ...
Selecting previously unselected package libxslt1.1:i386.
Preparing to unpack .../103-libxslt1.1_1.1.35-1.1+b1_i386.deb ...
Unpacking libxslt1.1:i386 (1.1.35-1.1+b1) ...
Selecting previously unselected package libyaml-0-2:i386.
Preparing to unpack .../104-libyaml-0-2_0.2.5-2_i386.deb ...
Unpacking libyaml-0-2:i386 (0.2.5-2) ...
Selecting previously unselected package lsb-release.
Preparing to unpack .../105-lsb-release_12.1-1_all.deb ...
Unpacking lsb-release (12.1-1) ...
Selecting previously unselected package lshw.
Preparing to unpack .../106-lshw_02.19.git.2021.06.19.996aaad9c7-2.1_i386.deb ...
Unpacking lshw (02.19.git.2021.06.19.996aaad9c7-2.1) ...
Selecting previously unselected package python3-wheel.
Preparing to unpack .../107-python3-wheel_0.45.1-1_all.deb ...
Unpacking python3-wheel (0.45.1-1) ...
Selecting previously unselected package python3-pip.
Preparing to unpack .../108-python3-pip_24.3.1+dfsg-1_all.deb ...
Unpacking python3-pip (24.3.1+dfsg-1) ...
Selecting previously unselected package openstack-pkg-tools.
Preparing to unpack .../109-openstack-pkg-tools_132_all.deb ...
Unpacking openstack-pkg-tools (132) ...
Selecting previously unselected package python-babel-localedata.
Preparing to unpack .../110-python-babel-localedata_2.16.0-1_all.deb ...
Unpacking python-babel-localedata (2.16.0-1) ...
Selecting previously unselected package python3.13.
Preparing to unpack .../111-python3.13_3.13.1-3_i386.deb ...
Unpacking python3.13 (3.13.1-3) ...
Selecting previously unselected package python3-all.
Preparing to unpack .../112-python3-all_3.12.8-1_i386.deb ...
Unpacking python3-all (3.12.8-1) ...
Selecting previously unselected package python3.12-dev.
Preparing to unpack .../113-python3.12-dev_3.12.8-3_i386.deb ...
Unpacking python3.12-dev (3.12.8-3) ...
Selecting previously unselected package python3-dev.
Preparing to unpack .../114-python3-dev_3.12.8-1_i386.deb ...
Unpacking python3-dev (3.12.8-1) ...
Selecting previously unselected package python3.13-dev.
Preparing to unpack .../115-python3.13-dev_3.13.1-3_i386.deb ...
Unpacking python3.13-dev (3.13.1-3) ...
Selecting previously unselected package python3-all-dev.
Preparing to unpack .../116-python3-all-dev_3.12.8-1_i386.deb ...
Unpacking python3-all-dev (3.12.8-1) ...
Selecting previously unselected package python3-async-timeout.
Preparing to unpack .../117-python3-async-timeout_5.0.1-1_all.deb ...
Unpacking python3-async-timeout (5.0.1-1) ...
Selecting previously unselected package python3-autopage.
Preparing to unpack .../118-python3-autopage_0.4.0-4_all.deb ...
Unpacking python3-autopage (0.4.0-4) ...
Selecting previously unselected package python3-babel.
Preparing to unpack .../119-python3-babel_2.16.0-1_all.deb ...
Unpacking python3-babel (2.16.0-1) ...
Selecting previously unselected package python3-bcrypt.
Preparing to unpack .../120-python3-bcrypt_4.2.0-2.1_i386.deb ...
Unpacking python3-bcrypt (4.2.0-2.1) ...
Selecting previously unselected package python3-blinker.
Preparing to unpack .../121-python3-blinker_1.9.0-1_all.deb ...
Unpacking python3-blinker (1.9.0-1) ...
Selecting previously unselected package python3-certifi.
Preparing to unpack .../122-python3-certifi_2024.8.30+dfsg-1_all.deb ...
Unpacking python3-certifi (2024.8.30+dfsg-1) ...
Selecting previously unselected package python3-cffi-backend:i386.
Preparing to unpack .../123-python3-cffi-backend_1.17.1-2+b1_i386.deb ...
Unpacking python3-cffi-backend:i386 (1.17.1-2+b1) ...
Selecting previously unselected package python3-chardet.
Preparing to unpack .../124-python3-chardet_5.2.0+dfsg-1_all.deb ...
Unpacking python3-chardet (5.2.0+dfsg-1) ...
Selecting previously unselected package python3-charset-normalizer.
Preparing to unpack .../125-python3-charset-normalizer_3.4.0-1+b1_i386.deb ...
Unpacking python3-charset-normalizer (3.4.0-1+b1) ...
Selecting previously unselected package python3-wcwidth.
Preparing to unpack .../126-python3-wcwidth_0.2.13+dfsg1-1_all.deb ...
Unpacking python3-wcwidth (0.2.13+dfsg1-1) ...
Selecting previously unselected package xclip.
Preparing to unpack .../127-xclip_0.13-4_i386.deb ...
Unpacking xclip (0.13-4) ...
Selecting previously unselected package python3-pyperclip.
Preparing to unpack .../128-python3-pyperclip_1.8.2-2_all.deb ...
Unpacking python3-pyperclip (1.8.2-2) ...
Selecting previously unselected package python3-cmd2.
Preparing to unpack .../129-python3-cmd2_2.5.7+ds-1_all.deb ...
Unpacking python3-cmd2 (2.5.7+ds-1) ...
Selecting previously unselected package python3-roman.
Preparing to unpack .../130-python3-roman_4.2-1_all.deb ...
Unpacking python3-roman (4.2-1) ...
Selecting previously unselected package python3-docutils.
Preparing to unpack .../131-python3-docutils_0.21.2+dfsg-2_all.deb ...
Unpacking python3-docutils (0.21.2+dfsg-2) ...
Selecting previously unselected package python3-pbr.
Preparing to unpack .../132-python3-pbr_6.1.0-4_all.deb ...
Unpacking python3-pbr (6.1.0-4) ...
Selecting previously unselected package python3-prettytable.
Preparing to unpack .../133-python3-prettytable_3.12.0-1_all.deb ...
Unpacking python3-prettytable (3.12.0-1) ...
Selecting previously unselected package python3-stevedore.
Preparing to unpack .../134-python3-stevedore_5.3.0-4_all.deb ...
Unpacking python3-stevedore (5.3.0-4) ...
Selecting previously unselected package python3-yaml.
Preparing to unpack .../135-python3-yaml_6.0.2-1+b1_i386.deb ...
Unpacking python3-yaml (6.0.2-1+b1) ...
Selecting previously unselected package python3-cliff.
Preparing to unpack .../136-python3-cliff_4.7.0-3_all.deb ...
Unpacking python3-cliff (4.7.0-3) ...
Selecting previously unselected package python3-coverage.
Preparing to unpack .../137-python3-coverage_7.6.0+dfsg1-2+b1_i386.deb ...
Unpacking python3-coverage (7.6.0+dfsg1-2+b1) ...
Selecting previously unselected package python3-cryptography.
Preparing to unpack .../138-python3-cryptography_43.0.0-1_i386.deb ...
Unpacking python3-cryptography (43.0.0-1) ...
Selecting previously unselected package python3-dateutil.
Preparing to unpack .../139-python3-dateutil_2.9.0-3_all.deb ...
Unpacking python3-dateutil (2.9.0-3) ...
Selecting previously unselected package python3-wrapt.
Preparing to unpack .../140-python3-wrapt_1.15.0-4_i386.deb ...
Unpacking python3-wrapt (1.15.0-4) ...
Selecting previously unselected package python3-debtcollector.
Preparing to unpack .../141-python3-debtcollector_3.0.0-3_all.deb ...
Unpacking python3-debtcollector (3.0.0-3) ...
Selecting previously unselected package python3-decorator.
Preparing to unpack .../142-python3-decorator_5.1.1-5_all.deb ...
Unpacking python3-decorator (5.1.1-5) ...
Selecting previously unselected package python3-deprecated.
Preparing to unpack .../143-python3-deprecated_1.2.15-1_all.deb ...
Unpacking python3-deprecated (1.2.15-1) ...
Selecting previously unselected package python3-packaging.
Preparing to unpack .../144-python3-packaging_24.2-1_all.deb ...
Unpacking python3-packaging (24.2-1) ...
Selecting previously unselected package python3-deprecation.
Preparing to unpack .../145-python3-deprecation_2.1.0-3_all.deb ...
Unpacking python3-deprecation (2.1.0-3) ...
Selecting previously unselected package python3-dnspython.
Preparing to unpack .../146-python3-dnspython_2.7.0-1_all.deb ...
Unpacking python3-dnspython (2.7.0-1) ...
Selecting previously unselected package python3-markupsafe.
Preparing to unpack .../147-python3-markupsafe_2.1.5-1+b2_i386.deb ...
Unpacking python3-markupsafe (2.1.5-1+b2) ...
Selecting previously unselected package python3-mako.
Preparing to unpack .../148-python3-mako_1.3.6-1_all.deb ...
Unpacking python3-mako (1.3.6-1) ...
Selecting previously unselected package python3-dogpile.cache.
Preparing to unpack .../149-python3-dogpile.cache_1.3.3-1_all.deb ...
Unpacking python3-dogpile.cache (1.3.3-1) ...
Selecting previously unselected package python3-protobuf.
Preparing to unpack .../150-python3-protobuf_3.21.12-10+b1_i386.deb ...
Unpacking python3-protobuf (3.21.12-10+b1) ...
Selecting previously unselected package python3-grpcio.
Preparing to unpack .../151-python3-grpcio_1.51.1-5+b1_i386.deb ...
Unpacking python3-grpcio (1.51.1-5+b1) ...
Selecting previously unselected package python3-six.
Preparing to unpack .../152-python3-six_1.17.0-1_all.deb ...
Unpacking python3-six (1.17.0-1) ...
Selecting previously unselected package python3-tenacity.
Preparing to unpack .../153-python3-tenacity_8.4.2+really8.4.1-2_all.deb ...
Unpacking python3-tenacity (8.4.2+really8.4.1-2) ...
Selecting previously unselected package python3-etcd3.
Preparing to unpack .../154-python3-etcd3_0.12.0-3_all.deb ...
Unpacking python3-etcd3 (0.12.0-3) ...
Selecting previously unselected package python3-greenlet.
Preparing to unpack .../155-python3-greenlet_3.1.0-1+b1_i386.deb ...
Unpacking python3-greenlet (3.1.0-1+b1) ...
Selecting previously unselected package python3-futurist.
Preparing to unpack .../156-python3-futurist_3.0.0-3_all.deb ...
Unpacking python3-futurist (3.0.0-3) ...
Selecting previously unselected package python3-idna.
Preparing to unpack .../157-python3-idna_3.8-2_all.deb ...
Unpacking python3-idna (3.8-2) ...
Selecting previously unselected package python3-urllib3.
Preparing to unpack .../158-python3-urllib3_2.2.3-4_all.deb ...
Unpacking python3-urllib3 (2.2.3-4) ...
Selecting previously unselected package python3-requests.
Preparing to unpack .../159-python3-requests_2.32.3+dfsg-1_all.deb ...
Unpacking python3-requests (2.32.3+dfsg-1) ...
Selecting previously unselected package python3-etcd3gw.
Preparing to unpack .../160-python3-etcd3gw_2.4.2-3_all.deb ...
Unpacking python3-etcd3gw (2.4.2-3) ...
Selecting previously unselected package python3-eventlet.
Preparing to unpack .../161-python3-eventlet_0.36.1-11_all.deb ...
Unpacking python3-eventlet (0.36.1-11) ...
Selecting previously unselected package python3-extras.
Preparing to unpack .../162-python3-extras_1.0.0-6_all.deb ...
Unpacking python3-extras (1.0.0-6) ...
Selecting previously unselected package python3-monotonic.
Preparing to unpack .../163-python3-monotonic_1.6-3_all.deb ...
Unpacking python3-monotonic (1.6-3) ...
Selecting previously unselected package python3-fasteners.
Preparing to unpack .../164-python3-fasteners_0.18-2_all.deb ...
Unpacking python3-fasteners (0.18-2) ...
Selecting previously unselected package python3-testtools.
Preparing to unpack .../165-python3-testtools_2.7.2-4_all.deb ...
Unpacking python3-testtools (2.7.2-4) ...
Selecting previously unselected package python3-fixtures.
Preparing to unpack .../166-python3-fixtures_4.1.0-3_all.deb ...
Unpacking python3-fixtures (4.1.0-3) ...
Selecting previously unselected package python3-flexcache.
Preparing to unpack .../167-python3-flexcache_0.3-2_all.deb ...
Unpacking python3-flexcache (0.3-2) ...
Selecting previously unselected package python3-flexparser.
Preparing to unpack .../168-python3-flexparser_0.4-1_all.deb ...
Unpacking python3-flexparser (0.4-1) ...
Selecting previously unselected package python3-zope.event.
Preparing to unpack .../169-python3-zope.event_5.0-0.1_all.deb ...
Unpacking python3-zope.event (5.0-0.1) ...
Selecting previously unselected package python3-zope.interface.
Preparing to unpack .../170-python3-zope.interface_7.2-1_i386.deb ...
Unpacking python3-zope.interface (7.2-1) ...
Selecting previously unselected package python3-gevent.
Preparing to unpack .../171-python3-gevent_24.11.1-1_i386.deb ...
Unpacking python3-gevent (24.11.1-1) ...
Selecting previously unselected package python3-ptyprocess.
Preparing to unpack .../172-python3-ptyprocess_0.7.0-6_all.deb ...
Unpacking python3-ptyprocess (0.7.0-6) ...
Selecting previously unselected package python3-pexpect.
Preparing to unpack .../173-python3-pexpect_4.9-3_all.deb ...
Unpacking python3-pexpect (4.9-3) ...
Selecting previously unselected package smartmontools.
Preparing to unpack .../174-smartmontools_7.4-2_i386.deb ...
Unpacking smartmontools (7.4-2) ...
Selecting previously unselected package python3-hardware.
Preparing to unpack .../175-python3-hardware_0.30.0-4_all.deb ...
Unpacking python3-hardware (0.30.0-4) ...
Selecting previously unselected package python3-ifaddr.
Preparing to unpack .../176-python3-ifaddr_0.2.0-1_all.deb ...
Unpacking python3-ifaddr (0.2.0-1) ...
Selecting previously unselected package python3-netaddr.
Preparing to unpack .../177-python3-netaddr_0.10.1-2_all.deb ...
Unpacking python3-netaddr (0.10.1-2) ...
Selecting previously unselected package python3-oslo.i18n.
Preparing to unpack .../178-python3-oslo.i18n_6.4.0-3_all.deb ...
Unpacking python3-oslo.i18n (6.4.0-3) ...
Selecting previously unselected package python3-oslo.context.
Preparing to unpack .../179-python3-oslo.context_5.6.0-3_all.deb ...
Unpacking python3-oslo.context (5.6.0-3) ...
Selecting previously unselected package python3-msgpack.
Preparing to unpack .../180-python3-msgpack_1.0.3-3+b3_i386.deb ...
Unpacking python3-msgpack (1.0.3-3+b3) ...
Selecting previously unselected package python3-iso8601.
Preparing to unpack .../181-python3-iso8601_2.1.0-2_all.deb ...
Unpacking python3-iso8601 (2.1.0-2) ...
Selecting previously unselected package python3-netifaces:i386.
Preparing to unpack .../182-python3-netifaces_0.11.0-2+b5_i386.deb ...
Unpacking python3-netifaces:i386 (0.11.0-2+b5) ...
Selecting previously unselected package python3-pyparsing.
Preparing to unpack .../183-python3-pyparsing_3.1.2-1_all.deb ...
Unpacking python3-pyparsing (3.1.2-1) ...
Selecting previously unselected package python3-tz.
Preparing to unpack .../184-python3-tz_2024.2-1_all.deb ...
Unpacking python3-tz (2024.2-1) ...
Selecting previously unselected package python3-oslo.utils.
Preparing to unpack .../185-python3-oslo.utils_7.3.0-4_all.deb ...
Unpacking python3-oslo.utils (7.3.0-4) ...
Selecting previously unselected package python3-oslo.serialization.
Preparing to unpack .../186-python3-oslo.serialization_5.5.0-3_all.deb ...
Unpacking python3-oslo.serialization (5.5.0-3) ...
Selecting previously unselected package python3-pyasyncore.
Preparing to unpack .../187-python3-pyasyncore_1.0.2-3_all.deb ...
Unpacking python3-pyasyncore (1.0.2-3) ...
Selecting previously unselected package python3-oslo.log.
Preparing to unpack .../188-python3-oslo.log_6.1.2-4_all.deb ...
Unpacking python3-oslo.log (6.1.2-4) ...
Selecting previously unselected package python3-rfc3986.
Preparing to unpack .../189-python3-rfc3986_2.0.0-3_all.deb ...
Unpacking python3-rfc3986 (2.0.0-3) ...
Selecting previously unselected package python3-oslo.config.
Preparing to unpack .../190-python3-oslo.config_1%3a9.6.0-6_all.deb ...
Unpacking python3-oslo.config (1:9.6.0-6) ...
Selecting previously unselected package python3-oslo.concurrency.
Preparing to unpack .../191-python3-oslo.concurrency_6.1.0-4_all.deb ...
Unpacking python3-oslo.concurrency (6.1.0-4) ...
Selecting previously unselected package python3-legacy-cgi.
Preparing to unpack .../192-python3-legacy-cgi_2.6.1-2_all.deb ...
Unpacking python3-legacy-cgi (2.6.1-2) ...
Selecting previously unselected package python3-webob.
Preparing to unpack .../193-python3-webob_1%3a1.8.7-3_all.deb ...
Unpacking python3-webob (1:1.8.7-3) ...
Selecting previously unselected package python3-zeroconf.
Preparing to unpack .../194-python3-zeroconf_0.136.2-1_all.deb ...
Unpacking python3-zeroconf (0.136.2-1) ...
Selecting previously unselected package python3-ironic-lib.
Preparing to unpack .../195-python3-ironic-lib_6.2.0-3_all.deb ...
Unpacking python3-ironic-lib (6.2.0-3) ...
Selecting previously unselected package python3-jinja2.
Preparing to unpack .../196-python3-jinja2_3.1.3-1.1_all.deb ...
Unpacking python3-jinja2 (3.1.3-1.1) ...
Selecting previously unselected package python3-jmespath.
Preparing to unpack .../197-python3-jmespath_1.0.1-1_all.deb ...
Unpacking python3-jmespath (1.0.1-1) ...
Selecting previously unselected package python3-json-pointer.
Preparing to unpack .../198-python3-json-pointer_2.4-3_all.deb ...
Unpacking python3-json-pointer (2.4-3) ...
Selecting previously unselected package python3-jsonpatch.
Preparing to unpack .../199-python3-jsonpatch_1.32-5_all.deb ...
Unpacking python3-jsonpatch (1.32-5) ...
Selecting previously unselected package python3-jwt.
Preparing to unpack .../200-python3-jwt_2.7.0-1_all.deb ...
Unpacking python3-jwt (2.7.0-1) ...
Selecting previously unselected package python3-kerberos.
Preparing to unpack .../201-python3-kerberos_1.1.14-3.1+b10_i386.deb ...
Unpacking python3-kerberos (1.1.14-3.1+b10) ...
Selecting previously unselected package python3-pure-sasl.
Preparing to unpack .../202-python3-pure-sasl_0.5.1+dfsg1-5_all.deb ...
Unpacking python3-pure-sasl (0.5.1+dfsg1-5) ...
Selecting previously unselected package python3-kazoo.
Preparing to unpack .../203-python3-kazoo_2.9.0-2_all.deb ...
Unpacking python3-kazoo (2.9.0-2) ...
Selecting previously unselected package python3-lxml:i386.
Preparing to unpack .../204-python3-lxml_5.3.0-1+b1_i386.deb ...
Unpacking python3-lxml:i386 (5.3.0-1+b1) ...
Selecting previously unselected package python3-oauthlib.
Preparing to unpack .../205-python3-oauthlib_3.2.2-2_all.deb ...
Unpacking python3-oauthlib (3.2.2-2) ...
Selecting previously unselected package python3-os-service-types.
Preparing to unpack .../206-python3-os-service-types_1.7.0-5_all.deb ...
Unpacking python3-os-service-types (1.7.0-5) ...
Selecting previously unselected package python3-keystoneauth1.
Preparing to unpack .../207-python3-keystoneauth1_5.8.0-3_all.deb ...
Unpacking python3-keystoneauth1 (5.8.0-3) ...
Selecting previously unselected package python3-platformdirs.
Preparing to unpack .../208-python3-platformdirs_4.3.6-1_all.deb ...
Unpacking python3-platformdirs (4.3.6-1) ...
Selecting previously unselected package python3-requestsexceptions.
Preparing to unpack .../209-python3-requestsexceptions_1.4.0-5_all.deb ...
Unpacking python3-requestsexceptions (1.4.0-5) ...
Selecting previously unselected package python3-openstacksdk.
Preparing to unpack .../210-python3-openstacksdk_4.0.1-3_all.deb ...
Unpacking python3-openstacksdk (4.0.1-3) ...
Selecting previously unselected package python3-os-client-config.
Preparing to unpack .../211-python3-os-client-config_2.1.0-3_all.deb ...
Unpacking python3-os-client-config (2.1.0-3) ...
Selecting previously unselected package python3-tempita.
Preparing to unpack .../212-python3-tempita_0.6.0-1_all.deb ...
Unpacking python3-tempita (0.6.0-1) ...
Selecting previously unselected package python3-paste.
Preparing to unpack .../213-python3-paste_3.10.1-1_all.deb ...
Unpacking python3-paste (3.10.1-1) ...
Selecting previously unselected package python3-pastedeploy-tpl.
Preparing to unpack .../214-python3-pastedeploy-tpl_3.1-1_all.deb ...
Unpacking python3-pastedeploy-tpl (3.1-1) ...
Selecting previously unselected package python3-pastedeploy.
Preparing to unpack .../215-python3-pastedeploy_3.1-1_all.deb ...
Unpacking python3-pastedeploy (3.1-1) ...
Selecting previously unselected package python3-repoze.lru.
Preparing to unpack .../216-python3-repoze.lru_0.7-3_all.deb ...
Unpacking python3-repoze.lru (0.7-3) ...
Selecting previously unselected package python3-routes.
Preparing to unpack .../217-python3-routes_2.5.1-6_all.deb ...
Unpacking python3-routes (2.5.1-6) ...
Selecting previously unselected package python3-yappi.
Preparing to unpack .../218-python3-yappi_1.6.10-2_i386.deb ...
Unpacking python3-yappi (1.6.10-2) ...
Selecting previously unselected package python3-oslo.service.
Preparing to unpack .../219-python3-oslo.service_3.5.0-3_all.deb ...
Unpacking python3-oslo.service (3.5.0-3) ...
Selecting previously unselected package python3-tomlkit.
Preparing to unpack .../220-python3-tomlkit_0.13.2-1_all.deb ...
Unpacking python3-tomlkit (0.13.2-1) ...
Selecting previously unselected package python3-voluptuous.
Preparing to unpack .../221-python3-voluptuous_0.14.2-1_all.deb ...
Unpacking python3-voluptuous (0.14.2-1) ...
Selecting previously unselected package python3-subunit.
Preparing to unpack .../222-python3-subunit_1.4.2-3_all.deb ...
Unpacking python3-subunit (1.4.2-3) ...
Selecting previously unselected package subunit.
Preparing to unpack .../223-subunit_1.4.2-3_all.deb ...
Unpacking subunit (1.4.2-3) ...
Selecting previously unselected package python3-stestr.
Preparing to unpack .../224-python3-stestr_4.1.0-3_all.deb ...
Unpacking python3-stestr (4.1.0-3) ...
Selecting previously unselected package python3-oslotest.
Preparing to unpack .../225-python3-oslotest_1%3a5.0.0-4_all.deb ...
Unpacking python3-oslotest (1:5.0.0-4) ...
Selecting previously unselected package python3-pint.
Preparing to unpack .../226-python3-pint_0.24.4-1_all.deb ...
Unpacking python3-pint (0.24.4-1) ...
Selecting previously unselected package python3-psutil.
Preparing to unpack .../227-python3-psutil_5.9.8-2_i386.deb ...
Unpacking python3-psutil (5.9.8-2) ...
Selecting previously unselected package python3-pymemcache.
Preparing to unpack .../228-python3-pymemcache_4.0.0-8_all.deb ...
Unpacking python3-pymemcache (4.0.0-8) ...
Selecting previously unselected package python3-pymysql.
Preparing to unpack .../229-python3-pymysql_1.1.1-2_all.deb ...
Unpacking python3-pymysql (1.1.1-2) ...
Selecting previously unselected package python3-pyudev.
Preparing to unpack .../230-python3-pyudev_0.24.3-1_all.deb ...
Unpacking python3-pyudev (0.24.3-1) ...
Selecting previously unselected package python3-redis.
Preparing to unpack .../231-python3-redis_4.3.4-4_all.deb ...
Unpacking python3-redis (4.3.4-4) ...
Selecting previously unselected package python3-zake.
Preparing to unpack .../232-python3-zake_0.2.2-8_all.deb ...
Unpacking python3-zake (0.2.2-8) ...
Selecting previously unselected package python3-tooz.
Preparing to unpack .../233-python3-tooz_6.3.0-4_all.deb ...
Unpacking python3-tooz (6.3.0-4) ...
Selecting previously unselected package python3-werkzeug.
Preparing to unpack .../234-python3-werkzeug_3.1.3-2_all.deb ...
Unpacking python3-werkzeug (3.1.3-2) ...
Selecting previously unselected package qemu-utils.
Preparing to unpack .../235-qemu-utils_1%3a9.2.0+ds-3+b1_i386.deb ...
Unpacking qemu-utils (1:9.2.0+ds-3+b1) ...
Setting up libconfig9:i386 (1.5-0.4+b2) ...
Setting up smartmontools (7.4-2) ...
/var/lib/smartmontools/drivedb/drivedb.h 7.3/5528 newly installed (NOT VERIFIED)
Setting up media-types (10.1.0) ...
Setting up libpipeline1:i386 (1.5.8-1) ...
Setting up libev4t64:i386 (1:4.33-2.1+b1) ...
Setting up libprotobuf32t64:i386 (3.21.12-10+b1) ...
Setting up libxau6:i386 (1:1.0.11-1) ...
Setting up libxdmcp6:i386 (1:1.1.5-1) ...
Setting up libsubunit-perl (1.4.2-3) ...
Setting up libkeyutils1:i386 (1.6.3-4) ...
Setting up pci.ids (0.0~2024.11.25-1) ...
Setting up libxcb1:i386 (1.17.0-2+b1) ...
Setting up libicu72:i386 (72.1-5+b1) ...
Setting up bsdextrautils (2.40.2-13) ...
Setting up libgpg-error0:i386 (1.51-3) ...
Setting up libmagic-mgc (1:5.45-3+b1) ...
Setting up libarchive-zip-perl (1.68-1) ...
Setting up libyaml-0-2:i386 (0.2.5-2) ...
Setting up freeipmi-common (1.6.13-3) ...
Setting up libtirpc-common (1.3.4+ds-1.3) ...
Setting up libdebhelper-perl (13.23) ...
Setting up libmagic1t64:i386 (1:5.45-3+b1) ...
Setting up x11-common (1:7.7+23.1) ...
invoke-rc.d: could not determine current runlevel
Setting up X socket directories... /tmp/.X11-unix /tmp/.ICE-unix.
Setting up gettext-base (0.22.5-3) ...
Setting up m4 (1.4.19-4) ...
Setting up libgcrypt20:i386 (1.11.0-7) ...
Setting up hdparm (9.65+ds-1.1) ...
Setting up libcom-err2:i386 (1.47.2-1) ...
Setting up file (1:5.45-3+b1) ...
Setting up lshw (02.19.git.2021.06.19.996aaad9c7-2.1) ...
Setting up libelf1t64:i386 (0.192-4) ...
Setting up python-babel-localedata (2.16.0-1) ...
Setting up libkrb5support0:i386 (1.21.3-3) ...
Setting up tzdata (2024b-4) ...

Current default time zone: 'Etc/UTC'
Local time is now:      Fri Feb  6 21:11:27 UTC 2026.
Universal Time is now:  Fri Feb  6 21:11:27 UTC 2026.
Run 'dpkg-reconfigure tzdata' if you wish to change it.

Setting up libpython3.13-minimal:i386 (3.13.1-3) ...
Setting up autotools-dev (20220109.1) ...
Setting up libexpat1-dev:i386 (2.6.4-1) ...
Setting up libx11-data (2:1.8.10-2) ...
Setting up python3-pastedeploy-tpl (3.1-1) ...
Setting up libproc2-0:i386 (2:4.0.4-6) ...
Setting up libunistring5:i386 (1.3-1) ...
Setting up libcares2:i386 (1.34.4-2.1) ...
Setting up libmnl0:i386 (1.0.5-3) ...
Setting up autopoint (0.22.5-3) ...
Setting up libk5crypto3:i386 (1.21.3-3) ...
Setting up autoconf (2.72-3) ...
Setting up libfreeipmi17 (1.6.13-3) ...
Setting up zlib1g-dev:i386 (1:1.3.dfsg+really1.3.1-1+b1) ...
Setting up libpci3:i386 (1:3.13.0-1+b1) ...
Setting up libffi8:i386 (3.4.6-1) ...
Setting up libnuma1:i386 (2.0.18-1+b1) ...
Setting up dwz (0.15-1+b1) ...
Setting up libaio1t64:i386 (0.3.113-8+b1) ...
Setting up sensible-utils (0.0.24) ...
Setting up libuchardet0:i386 (0.0.8-1+b2) ...
Setting up procps (2:4.0.4-6) ...
Setting up libnl-3-200:i386 (3.7.0-0.3+b1) ...
Setting up libtasn1-6:i386 (4.19.0-3+b3) ...
Setting up python3.13-minimal (3.13.1-3) ...
Setting up libx11-6:i386 (2:1.8.10-2) ...
Setting up netbase (6.4) ...
Setting up libabsl20230802:i386 (20230802.1-4) ...
Setting up sgml-base (1.31) ...
Setting up libkrb5-3:i386 (1.21.3-3) ...
Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
Setting up liburing2:i386 (2.8-1) ...
Setting up lsb-release (12.1-1) ...
Setting up openssl (3.3.2-2) ...
Setting up readline-common (8.2-6) ...
Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Setting up libonig5:i386 (6.9.9-1+b1) ...
Setting up libkmod2:i386 (33+20240816-2) ...
Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ...
Setting up ethtool (1:6.11-1) ...
Setting up automake (1:1.16.5-1.3) ...
update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode
Setting up libfile-stripnondeterminism-perl (1.14.0-1) ...
Setting up libice6:i386 (2:1.1.1-1) ...
Setting up libre2-11:i386 (20240501-3+b1) ...
Setting up gettext (0.22.5-3) ...
Setting up libtool (2.4.7-8) ...
Setting up libjq1:i386 (1.7.1-3+b1) ...
Setting up libxext6:i386 (2:1.3.4-1+b2) ...
Setting up libidn2-0:i386 (2.3.7-2+b1) ...
Setting up libffi-dev:i386 (3.4.6-1) ...
Setting up intltool-debian (0.35.0+20060710.6) ...
Setting up dh-autoreconf (20) ...
Setting up ca-certificates (20241223) ...
Updating certificates in /etc/ssl/certs...
152 added, 0 removed; done.
Setting up lldpad (1.1.1-1) ...
invoke-rc.d: could not determine current runlevel
invoke-rc.d: policy-rc.d denied execution of start.
Setting up libglib2.0-0t64:i386 (2.82.4-1) ...
No schema files found: doing nothing.
Setting up libp11-kit0:i386 (0.25.5-3) ...
Setting up libgssapi-krb5-2:i386 (1.21.3-3) ...
Setting up pciutils (1:3.13.0-1+b1) ...
Setting up libjs-sphinxdoc (8.1.3-3) ...
Setting up libreadline8t64:i386 (8.2-6) ...
Setting up dh-strip-nondeterminism (1.14.0-1) ...
Setting up groff-base (1.23.0-7) ...
Setting up xml-core (0.19) ...
Setting up jq (1.7.1-3+b1) ...
Setting up libxslt1.1:i386 (1.1.35-1.1+b1) ...
Setting up libsm6:i386 (2:1.2.4-1) ...
Setting up libpython3.13-stdlib:i386 (3.13.1-3) ...
Setting up ipmitool (1.8.19-7.1) ...
invoke-rc.d: could not determine current runlevel
invoke-rc.d: policy-rc.d denied execution of start.
Setting up libpython3.13:i386 (3.13.1-3) ...
Setting up libgnutls30t64:i386 (3.8.8-2) ...
Setting up libtirpc3t64:i386 (1.3.4+ds-1.3+b1) ...
Setting up python3.13 (3.13.1-3) ...
Setting up po-debconf (1.0.21+nmu1) ...
Setting up libpsl5t64:i386 (0.21.2-1.1+b1) ...
Setting up man-db (2.13.0-1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libpython3.13-dev:i386 (3.13.1-3) ...
Setting up libxt6t64:i386 (1:1.2.1-1.2+b1) ...
Setting up libnsl2:i386 (1.3.0-3+b3) ...
Setting up qemu-utils (1:9.2.0+ds-3+b1) ...
Setting up libxmu6:i386 (2:1.1.3-3+b3) ...
Setting up libpython3.12-stdlib:i386 (3.12.8-3) ...
Setting up wget (1.24.5-2) ...
Setting up python3.13-dev (3.13.1-3) ...
Setting up python3.12 (3.12.8-3) ...
Setting up debhelper (13.23) ...
Setting up libpython3.12t64:i386 (3.12.8-3) ...
Setting up xclip (0.13-4) ...
Setting up ieee-data (20240722) ...
Setting up libpython3-stdlib:i386 (3.12.8-1) ...
Setting up python3 (3.12.8-1) ...
Setting up libpython3.12-dev:i386 (3.12.8-3) ...
Setting up python3-zipp (3.21.0-1) ...
Setting up python3-autocommand (2.2.2-3) ...
Setting up python3-markupsafe (2.1.5-1+b2) ...
Setting up python3-wheel (0.45.1-1) ...
Setting up python3-platformdirs (4.3.6-1) ...
Setting up python3-psutil (5.9.8-2) ...
Setting up python3-tz (2024.2-1) ...
Setting up python3-ifaddr (0.2.0-1) ...
Setting up python3-monotonic (1.6-3) ...
Setting up python3-async-timeout (5.0.1-1) ...
Setting up python3-six (1.17.0-1) ...
Setting up python3-roman (4.2-1) ...
Setting up python3-decorator (5.1.1-5) ...
Setting up python3-jinja2 (3.1.3-1.1) ...
Setting up python3-tempita (0.6.0-1) ...
Setting up python3-packaging (24.2-1) ...
Setting up python3-iso8601 (2.1.0-2) ...
Setting up python3-wcwidth (0.2.13+dfsg1-1) ...
Setting up python3-pyparsing (3.1.2-1) ...
Setting up python3-certifi (2024.8.30+dfsg-1) ...
Setting up python3-werkzeug (3.1.3-2) ...
Setting up python3-jmespath (1.0.1-1) ...
Setting up python3-greenlet (3.1.0-1+b1) ...
Setting up python3-idna (3.8-2) ...
Setting up python3-wrapt (1.15.0-4) ...
Setting up python3.12-dev (3.12.8-3) ...
Setting up python3-deprecation (2.1.0-3) ...
Setting up python3-typing-extensions (4.12.2-2) ...
Setting up python3-pymysql (1.1.1-2) ...
Setting up python3-fasteners (0.18-2) ...
Setting up python3-pip (24.3.1+dfsg-1) ...
Setting up python3-urllib3 (2.2.3-4) ...
Setting up python3-netifaces:i386 (0.11.0-2+b5) ...
Setting up python3-legacy-cgi (2.6.1-2) ...
Setting up python3-netaddr (0.10.1-2) ...
Setting up python3-json-pointer (2.4-3) ...
Setting up python3-lxml:i386 (5.3.0-1+b1) ...
Setting up python3-dnspython (2.7.0-1) ...
Setting up python3-dateutil (2.9.0-3) ...
Setting up python3-flexcache (0.3-2) ...
Setting up python3-msgpack (1.0.3-3+b3) ...
Setting up python3-voluptuous (0.14.2-1) ...
Setting up python3-pyasyncore (1.0.2-3) ...
Setting up python3-pyudev (0.24.3-1) ...
Setting up python3-protobuf (3.21.12-10+b1) ...
Setting up python3-prettytable (3.12.0-1) ...
Setting up python3-tomlkit (0.13.2-1) ...
Setting up python3-deprecated (1.2.15-1) ...
Setting up python3-cffi-backend:i386 (1.17.1-2+b1) ...
Setting up python3-webob (1:1.8.7-3) ...
Setting up python3-ptyprocess (0.7.0-6) ...
Setting up python3-blinker (1.9.0-1) ...
Setting up python3-more-itertools (10.5.0-1) ...
Setting up python3-pymemcache (4.0.0-8) ...
Setting up libpython3-dev:i386 (3.12.8-1) ...
Setting up python3-jaraco.functools (4.1.0-1) ...
Setting up python3-repoze.lru (0.7-3) ...
Setting up python3-jaraco.context (6.0.0-1) ...
Setting up python3-jwt (2.7.0-1) ...
Setting up python3-zeroconf (0.136.2-1) ...
Setting up python3-charset-normalizer (3.4.0-1+b1) ...
Setting up python3-jsonpatch (1.32-5) ...
update-alternatives: using /usr/bin/json-patch-jsondiff to provide /usr/bin/jsondiff (jsondiff) in auto mode
Setting up python3-tenacity (8.4.2+really8.4.1-2) ...
Setting up python3-bcrypt (4.2.0-2.1) ...
Setting up python3-autopage (0.4.0-4) ...
Setting up python3-typeguard (4.4.1-1) ...
Setting up python3-extras (1.0.0-6) ...
Setting up python3-kerberos (1.1.14-3.1+b10) ...
Setting up python3-all (3.12.8-1) ...
Setting up python3-coverage (7.6.0+dfsg1-2+b1) ...
Setting up python3-yaml (6.0.2-1+b1) ...
Setting up python3-pyperclip (1.8.2-2) ...
Setting up openstack-pkg-tools (132) ...
Setting up python3-routes (2.5.1-6) ...
Setting up python3-inflect (7.3.1-2) ...
Setting up python3-eventlet (0.36.1-11) ...
Setting up python3-flexparser (0.4-1) ...
Setting up python3-rfc3986 (2.0.0-3) ...
Setting up python3-cmd2 (2.5.7+ds-1) ...
Setting up libpython3-all-dev:i386 (3.12.8-1) ...
Setting up python3-jaraco.text (4.0.0-1) ...
Setting up python3-pexpect (4.9-3) ...
Setting up python3-cryptography (43.0.0-1) ...
Setting up python3-dev (3.12.8-1) ...
Setting up python3-grpcio (1.51.1-5+b1) ...
Setting up python3-redis (4.3.4-4) ...
Setting up python3-etcd3 (0.12.0-3) ...
Setting up python3-pkg-resources (75.6.0-1) ...
Setting up python3-all-dev (3.12.8-1) ...
Setting up python3-setuptools (75.6.0-1) ...
Setting up python3-pure-sasl (0.5.1+dfsg1-5) ...
Setting up python3-babel (2.16.0-1) ...
update-alternatives: using /usr/bin/pybabel-python3 to provide /usr/bin/pybabel (pybabel) in auto mode
Setting up python3-zope.event (5.0-0.1) ...
Setting up python3-zope.interface (7.2-1) ...
Setting up python3-pbr (6.1.0-4) ...
Setting up python3-requestsexceptions (1.4.0-5) ...
Setting up python3-futurist (3.0.0-3) ...
Setting up python3-debtcollector (3.0.0-3) ...
Setting up python3-gevent (24.11.1-1) ...
Setting up python3-pint (0.24.4-1) ...
Setting up python3-oauthlib (3.2.2-2) ...
Setting up python3-chardet (5.2.0+dfsg-1) ...
Setting up python3-paste (3.10.1-1) ...
Setting up python3-kazoo (2.9.0-2) ...
Setting up python3-requests (2.32.3+dfsg-1) ...
Setting up python3-zake (0.2.2-8) ...
Setting up python3-oslo.context (5.6.0-3) ...
Setting up python3-os-service-types (1.7.0-5) ...
Setting up python3-stevedore (5.3.0-4) ...
Setting up python3-oslo.i18n (6.4.0-3) ...
Setting up python3-mako (1.3.6-1) ...
Setting up python3-keystoneauth1 (5.8.0-3) ...
Setting up python3-hardware (0.30.0-4) ...
Setting up dh-python (6.20241217) ...
Setting up python3-pastedeploy (3.1-1) ...
Setting up python3-etcd3gw (2.4.2-3) ...
Setting up python3-yappi (1.6.10-2) ...
Setting up python3-oslo.utils (7.3.0-4) ...
Setting up python3-dogpile.cache (1.3.3-1) ...
Setting up python3-openstacksdk (4.0.1-3) ...
Setting up python3-os-client-config (2.1.0-3) ...
Setting up python3-oslo.serialization (5.5.0-3) ...
Setting up python3-tooz (6.3.0-4) ...
Setting up python3-fixtures (4.1.0-3) ...
Setting up python3-testtools (2.7.2-4) ...
Setting up python3-subunit (1.4.2-3) ...
Setting up subunit (1.4.2-3) ...
Processing triggers for libc-bin (2.40-5) ...
Processing triggers for sgml-base (1.31) ...
Setting up docutils-common (0.21.2+dfsg-2) ...
Processing triggers for sgml-base (1.31) ...
Setting up python3-docutils (0.21.2+dfsg-2) ...
Setting up python3-cliff (4.7.0-3) ...
Setting up python3-oslo.config (1:9.6.0-6) ...
Setting up python3-oslo.concurrency (6.1.0-4) ...
Setting up python3-oslo.log (6.1.2-4) ...
Setting up python3-stestr (4.1.0-3) ...
Setting up python3-ironic-lib (6.2.0-3) ...
Setting up python3-oslo.service (3.5.0-3) ...
Setting up python3-oslotest (1:5.0.0-4) ...
Processing triggers for ca-certificates (20241223) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...
Building tag database...
 -> Finished parsing the build-deps
Reading package lists...
Building dependency tree...
Reading state information...
fakeroot is already the newest version (1.36.2-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
I: Building the package
I: user script /srv/workspace/pbuilder/53651/tmp/hooks/A99_set_merged_usr starting
Not re-configuring usrmerge for unstable
I: user script /srv/workspace/pbuilder/53651/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
dpkg-buildpackage: info: source changed by Thomas Goirand <zigo@debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture i386
 debian/rules clean
make: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
dh clean --buildsystem=pybuild --with python3
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
rm -rf *.egg-info build
rm -f debian/*.init debian/*.service
find .  -type d -name __pycache__ -exec rm -r {} \+
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 debian/rules binary
make: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
dh binary --buildsystem=pybuild --with python3
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
I: pybuild base:311: python3.13 setup.py config 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` and ``easy_install``.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://github.com/pypa/setuptools/issues/917 for details.
        ********************************************************************************

!!
  easy_install.initialize_options(self)
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
/usr/lib/python3/dist-packages/pbr/core.py:140: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
running config
I: pybuild base:311: python3.12 setup.py config 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` and ``easy_install``.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://github.com/pypa/setuptools/issues/917 for details.
        ********************************************************************************

!!
  easy_install.initialize_options(self)
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
/usr/lib/python3/dist-packages/pbr/core.py:140: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
running config
   debian/rules override_dh_auto_build
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
echo "Do nothing..."
Do nothing...
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   debian/rules override_dh_auto_test
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
echo "Do nothing..."
Do nothing...
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   create-stamp debian/debhelper-build-stamp
   dh_testroot -O--buildsystem=pybuild
   dh_prep -O--buildsystem=pybuild
   dh_installdirs -O--buildsystem=pybuild
   debian/rules override_dh_auto_install
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
echo "Do nothing..."
Do nothing...
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   debian/rules override_dh_install
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
pkgos-dh_auto_install --no-py2 --in-tmp
+ PKGOS_IN_TMP=no
+ 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
+ SRC_PKG_NAME=ironic-python-agent
++ echo ironic-python-agent
++ sed s/python-//
+ PY_MODULE_NAME=ironic-agent
++ py3versions -vr
+ PYTHON3S='3.13 3.12'
+ '[' yes = yes ']'
+ TARGET_DIR=tmp
+ 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.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` and ``easy_install``.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://github.com/pypa/setuptools/issues/917 for details.
        ********************************************************************************

!!
  easy_install.initialize_options(self)
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
/usr/lib/python3/dist-packages/pbr/core.py:140: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
running install
[pbr] Generating AUTHORS
[pbr] AUTHORS complete (0.0s)
running build
running build_py
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/agent.py -> build/lib/ironic_python_agent/cmd
copying ironic_python_agent/cmd/__init__.py -> build/lib/ironic_python_agent/cmd
creating build/lib/ironic_python_agent/api
copying ironic_python_agent/api/__init__.py -> build/lib/ironic_python_agent/api
copying ironic_python_agent/api/app.py -> build/lib/ironic_python_agent/api
creating build/lib/ironic_python_agent/extensions
copying ironic_python_agent/extensions/flow.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/log.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/__init__.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/deploy.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/base.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/standby.py -> build/lib/ironic_python_agent/extensions
copying ironic_python_agent/numa_inspector.py -> build/lib/ironic_python_agent
copying ironic_python_agent/netutils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/encoding.py -> build/lib/ironic_python_agent
copying ironic_python_agent/dmi_inspector.py -> build/lib/ironic_python_agent
copying ironic_python_agent/inspect.py -> build/lib/ironic_python_agent
copying ironic_python_agent/version.py -> build/lib/ironic_python_agent
copying ironic_python_agent/raid_utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/efi_utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/ironic_api_client.py -> build/lib/ironic_python_agent
copying ironic_python_agent/inject_files.py -> build/lib/ironic_python_agent
copying ironic_python_agent/inspector.py -> build/lib/ironic_python_agent
copying ironic_python_agent/disk_utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/agent.py -> build/lib/ironic_python_agent
copying ironic_python_agent/__init__.py -> build/lib/ironic_python_agent
copying ironic_python_agent/format_inspector.py -> build/lib/ironic_python_agent
copying ironic_python_agent/burnin.py -> build/lib/ironic_python_agent
copying ironic_python_agent/tls_utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/config.py -> build/lib/ironic_python_agent
copying ironic_python_agent/disk_partitioner.py -> build/lib/ironic_python_agent
copying ironic_python_agent/errors.py -> build/lib/ironic_python_agent
copying ironic_python_agent/qemu_img.py -> build/lib/ironic_python_agent
copying ironic_python_agent/partition_utils.py -> build/lib/ironic_python_agent
copying ironic_python_agent/hardware.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/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_flow.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_clean.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
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_deploy.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/__init__.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
creating 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/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
creating 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/tests/functional/base.py -> build/lib/ironic_python_agent/tests/functional
copying ironic_python_agent/tests/__init__.py -> build/lib/ironic_python_agent/tests
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/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/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_netutils.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_numa_inspector.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_multi_hardware.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_utils.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_dmi_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/dmi_inspector_data.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_disk_utils.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/__init__.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_multi_hardware_clean_steps.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_inspector.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_hardware.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_encoding.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/base.py -> build/lib/ironic_python_agent/tests/unit
running egg_info
creating ironic_python_agent.egg-info
writing ironic_python_agent.egg-info/PKG-INFO
writing dependency_links to ironic_python_agent.egg-info/dependency_links.txt
writing entry points to ironic_python_agent.egg-info/entry_points.txt
writing requirements to ironic_python_agent.egg-info/requires.txt
writing top-level names to ironic_python_agent.egg-info/top_level.txt
[pbr] Processing SOURCES.txt
writing manifest file 'ironic_python_agent.egg-info/SOURCES.txt'
warning: no files found matching 'AUTHORS'
warning: no files found matching 'ChangeLog'
warning: no previously-included files found matching '.gitignore'
warning: no previously-included files found matching '.gitreview'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
adding license file 'LICENSE'
writing manifest file 'ironic_python_agent.egg-info/SOURCES.txt'
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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/__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/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/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/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/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/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/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/qemu_img.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
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
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_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_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_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_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_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_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_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_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_errors.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/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/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_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/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_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_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_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/__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_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_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_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_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_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_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_qemu_img.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_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_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_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_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_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/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_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_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/__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_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/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_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/base.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/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/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/base.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/tests/functional
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/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/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/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/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/__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/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/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/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/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/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/standby.py -> /build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages/ironic_python_agent/extensions
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/__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/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/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/hardware.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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/__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/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/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/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/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/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/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/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/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/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_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_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_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_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_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_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_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_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_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/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/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_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/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_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_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_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/__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_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_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_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_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_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_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_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_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_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_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_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_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/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_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/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/__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_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/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_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/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/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/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/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/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/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/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/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/__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/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/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/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/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/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/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/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/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/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/hardware.py to hardware.cpython-313.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
+ 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.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/command/develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` and ``easy_install``.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://github.com/pypa/setuptools/issues/917 for details.
        ********************************************************************************

!!
  easy_install.initialize_options(self)
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
/usr/lib/python3/dist-packages/pbr/core.py:140: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
running install
[pbr] Generating AUTHORS
[pbr] AUTHORS complete (0.0s)
running build
running build_py
running egg_info
writing ironic_python_agent.egg-info/PKG-INFO
writing dependency_links to ironic_python_agent.egg-info/dependency_links.txt
writing entry points to ironic_python_agent.egg-info/entry_points.txt
writing requirements to ironic_python_agent.egg-info/requires.txt
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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/__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/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/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/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/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/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/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/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/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/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_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_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_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_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_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_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_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_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_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/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/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_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/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_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_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_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/__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_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_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_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_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_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_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_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_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_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_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_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_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/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_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/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/__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_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/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_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/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/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/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/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/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/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/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/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/__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/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/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/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/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/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/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/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/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/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/hardware.py to hardware.cpython-312.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
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
+ 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
+ PYTHONS=disabled
+ PYTHON3S=disabled
+ TEST_PARALLEL_OPT=--parallel
+ TEST_SERIAL_OPT=
+ 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
++ py3versions -vr
+ PYTHON3S='3.13 3.12'
+ '[' yes = no ']'
+ '[' no = yes ']'
+ for pyvers in ${PYTHON3S}
+ '[' 3.13 = disabled ']'
++ echo 3.13
++ cut -d. -f1
+ PYMAJOR=3
+ 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'
Implicitly adding PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages
++ pwd
+ export PYTHONPATH=/build/reproducible-path/ironic-python-agent-9.14.0/debian/tmp/usr/lib/python3/dist-packages
+ 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.13
+ stestr run --parallel --subunit 'ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout)'
+ subunit2pyunit
   ERROR [root] Failed to query firmware of device <Mock name='mock.dev_pci' id='4104903416'>: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   ERROR [root] Duplicate componentFlavor MT_0000000540
 WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'}
   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
 WARNING [root] The root device was not detected in 27 seconds
   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] 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
   ERROR [root] Failed Prerequisite check. Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   ERROR [root] Failed to query tool configuration of device <Mock name='mock.dev_pci' id='4105072688'>: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
 WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: 
 WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello
 WARNING [root] The root device was not detected in 45 seconds
   ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command.
Command: None
Exit code: -
Stdout: 'boop'
Stderr: None
   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
   ERROR [root] Failed to query firmware of device <Mock name='mock.dev_pci' id='4105365712'>: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   ERROR [ironic_python_agent.utils] collector <Mock name='mock.name' id='4106434768'> failed: boom
 WARNING [root] The root device was not detected in 27 seconds
 WARNING [ironic_python_agent.efi_utils] Empty EFI partition detected.
   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
   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
   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 "<string>", 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
   ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image
   ERROR [root] Failed to set configuration of device <Mock name='mock.dev_pci' id='4105363504'>,  ['SRIOV_EN=20']: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
 WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: 
   ERROR [ironic_python_agent.utils] failed to run hardware-detect utility: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   ERROR [ironic_python_agent.disk_utils] Security: Image failed safety check
 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
   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 "<string>", 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 [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
 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
   ERROR [ironic_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0)
   ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device <Mock name='mock.dev_pci' id='4105365528'> is not supported with current fw
   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 "<string>", 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] Configuraiton: UNSUPPORTED_PARAM is not supported by mstconfig, please update to the latest mstflint package.
   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 "<string>", 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] 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 "<string>", 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 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
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.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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00023674964904785156 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.00023674964904785156 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0008909702301025391 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.0008909702301025391 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   ERROR [ironic_python_agent.agent] error sending heartbeat to <Mock name='mock.api_urls' id='4107711432'>
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(
    ~~~~~~~~~~~~~~~~~~^
        uuid=self.agent.get_node_uuid(),
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
        generated_cert=self.agent.generated_cert,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  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: uh oh!
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0015032291412353516 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.0015032291412353516 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0019428730010986328 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.0019428730010986328 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002536773681640625 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.002536773681640625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0029296875 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.0029296875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0035331249237060547 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.0035331249237060547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004091501235961914 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.004091501235961914 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004644632339477539 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.004644632339477539 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005190134048461914 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
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_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_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.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] 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 "<string>", 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 "<string>", 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.extensions.standby] URL: http://example.org; time: 0.000148773193359375 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.000148773193359375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0006229877471923828 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.0006229877471923828 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0010170936584472656 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.0010170936584472656 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0014088153839111328 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   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
 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.0014088153839111328 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002087116241455078 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.002087116241455078 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0026264190673828125 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.0026264190673828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003165006637573242 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.003165006637573242 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003707408905029297 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.003707408905029297 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004216432571411133 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.004216432571411133 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004701852798461914 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   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 [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: {}
   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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00015091896057128906 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.00015091896057128906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0007984638214111328 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.0007984638214111328 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.001340627670288086 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.001340627670288086 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0023899078369140625 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.0023899078369140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0029299259185791016 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.0029299259185791016 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0034368038177490234 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.0034368038177490234 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0039293766021728516 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.0039293766021728516 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004425048828125 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.004425048828125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0049228668212890625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   ERROR [ironic_python_agent.inspector] inspector url error 400: <MagicMock name='post().content.decode()' id='4105805088'>, proceeding with lookup
 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.extensions.standby] Image download failed, 8 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0049228668212890625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.dmi_inspector] Failed to parse Handle type in dmi output: list index out of range
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.022931814193725586 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   ERROR [ironic_python_agent.utils] boom
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.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.utils] failed to run dmidecode: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
 WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', <Mock id='4105799888'>), ('eth1', <Mock id='4105800256'>)]
   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 "<string>", 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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0001926422119140625 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.0001926422119140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [root] Something went wrong when readlink for interface eth2. Error: fake
   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 "<string>", 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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0013730525970458984 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.0013730525970458984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0016913414001464844 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.0016913414001464844 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0021791458129882812 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.0021791458129882812 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0025110244750976562 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.0025110244750976562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0028066635131835938 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.0028066635131835938 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0030651092529296875 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.0030651092529296875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003313302993774414 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.003313302993774414 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0035605430603027344 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.0035605430603027344 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0038089752197265625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 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: line 1.
ironic-python-agent: line 2 message
 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.extensions.standby] URL: http://example.org; time: 0.0012364387512207031 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.0012364387512207031 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
   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 "<string>", 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.extensions.standby] URL: http://example.org; time: 0.0017571449279785156 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.0017571449279785156 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0021941661834716797 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.0021941661834716797 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0026209354400634766 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
   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 "<string>", 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.extensions.standby] Image download failed, 3 of 9: Error downloading image: Download of image fake_id failed: URL: http://example.org; time: 0.0026209354400634766 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0030536651611328125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.0030536651611328125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0035400390625 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.0035400390625 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003976345062255859 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.003976345062255859 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004451274871826172 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.004451274871826172 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004908561706542969 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 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.004908561706542969 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005389213562011719 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106620744'> Response headers: <MagicMock name='get().headers' id='4106617984'>
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_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.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
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_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.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_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.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_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_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.netutils] Trailing byte received in an LLDP package: b'5'
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.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.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_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
   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.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_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_hardware.TestVersions.test_check_versions
ironic_python_agent.tests.unit.test_hardware.TestVersions.test_check_versions ... 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.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_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.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_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_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.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_efi_utils.TestManageUefi.test_failure
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... 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
   ERROR [root] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake
   ERROR [root] Clean version mismatch for command execute_deploy_step
   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: {}
 WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', <Mock id='4105800072'>)]
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.test_agent.TestHeartbeater.test__heartbeat_expected
ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... 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] Can't find field vendor for device lo in device class net
 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.dmi_inspector] Failed to process memory dmi data: 'Handle'
   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
 WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices'
   ERROR [root] Clean version mismatch for command execute_service_step
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0009377002716064453 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: <MagicMock name='get().headers' id='4107203344'>
 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: 
 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 [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: <MagicMock name='get().headers' id='4106047304'>
 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: <MagicMock name='get().headers' id='4106047304'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.001667022705078125 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: <MagicMock name='get().headers' id='4106047304'>
   ERROR [ironic_python_agent.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets.
   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.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_efi_utils.TestManageUefi.test_failure_after_failure
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure_after_failure ... ok
 WARNING [ironic_python_agent.extensions.standby] Unable to connect to http://example.org, retrying. Error: 
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.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: <Mock name='mock.headers' id='4105589704'>
 WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device foo: 
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.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 ...  WARNING [ironic_python_agent.inspector] Failed to gather numa_node id from PCI device bar: 
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.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 [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmpn9vi6hrm/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum
 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 [ironic_python_agent.utils] Failed to get list of PCI devices: 
   ERROR [root] Tried to execute fake.fake_sync_command, agent is still executing Command name: name, params: {}, status: RUNNING, result: None.
 WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope
   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] Failed to move file: /firmware_images/fw1.bin, 
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.TestCheckPrereq.test_check_prereq_exception
ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestCheckPrereq.test_check_prereq_exception ... ok
 WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding!
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_deploy.TestDeployExtension.test_execute_deploy_step
ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step ... 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.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_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: Device sdh was disqualified as virtual media. Type: other, Transport: usb
 WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding!
ironic-python-agent: Copying configuration from /tmp/tmpimi1thp5/etc/ironic-python-agent to /etc/ironic-python-agent
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_disksironic-python-agent: Copying configuration from /tmp/tmpimi1thp5/etc/ironic-python-agent.d to /etc/ironic-python-agent.d
 ... 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 [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
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: Excluding device sdh1 from virtual mediaconsideration as it is a partition.
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_inspector.TestInspect.test_collectors_option
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... 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
   ERROR [root] Failed to open URL data: HTTP Error 500: Internal Error
 WARNING [ironic_python_agent.inspector] failed to get system journal
ironic-python-agent: Copying configuration from /tmp/tmpqb5jh0hp/etc/ironic-python-agent to /etc/ironic-python-agent
ironic-python-agent: Copying configuration from /tmp/tmpqb5jh0hp/etc/ironic-python-agent.d to /etc/ironic-python-agent.d
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_disk_utils.GetDeviceInformationTestCase.test_empty
ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_empty ... 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_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.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
   ERROR [root] Failed to open URL data: <urlopen error URL error>
/bin/sh: line 1: mkisofs: command not found
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.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_disk_utils.GetDeviceInformationTestCase.test_fields
ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_fields ... ok
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
   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 "<string>", 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: Device sdh was disqualified as virtual media. Type: disk, Transport: sata
ironic-python-agent: /tmp/tmp7_lnq3a7/etc/ironic-python-agent not found
ironic-python-agent: /tmp/tmp7_lnq3a7/etc/ironic-python-agent.d not found
   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: 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: No virtual media device detected
ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: scsi
   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.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
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
   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 "<string>", 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 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.GetDeviceInformationTestCase.test_normal
ironic_python_agent.tests.unit.test_disk_utils.GetDeviceInformationTestCase.test_normal ... 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: 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: 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.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_disk_utils.GetPartitionTableTypeTestCase.test_msdos
ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_msdos ... 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: Cannot use configuration from virtual media as the agent was not booted from virtual media.
   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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4b71af8>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4b71af8>: 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("<urllib3.connection.HTTPSConnection object at 0xf4b71af8>: 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.extensions.poll] Node lookup data can only be set when the Ironic Python Agent is running in standalone mode.
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
ironic-python-agent: Did not identify any virtual media candidates devices.
   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
   ERROR [root] Mismatch provided checksum a94e683ea16d9ae44768f0a65942234d for image http://10.10.10.10/firmware_images/fw1.bin
   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 "<string>", 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_disk_utils.GetPartitionTableTypeTestCase.test_unknown
ironic_python_agent.tests.unit.test_disk_utils.GetPartitionTableTypeTestCase.test_unknown ... 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_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.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
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
   ERROR [root] Unexpected error dispatching unexpected_fail to manager <ironic_python_agent.tests.unit.test_multi_hardware.FakeMainlineHardwareManager object at 0xf49b5328>: 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
   ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228
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.extensions.test_standby.TestStandbyExtension.test_download_image
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_download_image ... ok
/bin/sh: line 1: mkisofs: command not found
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.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception
ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_exception ... ok
   ERROR [root] duplicate settings for device ID 1017 
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.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
/bin/sh: line 1: mkisofs: command not found
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
   ERROR [root] There is no deviceID provided for this settings
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_inject_files.TestValidateFiles.test_numeric_fields
ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... ok
   ERROR [root] The provided firmware version 20.34.1012 does not match image firmware version 20.35.1012
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.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_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.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_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.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.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 [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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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("<urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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.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.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.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
   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_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_agent.TestHeartbeater.test_heartbeat
ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... 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_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.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.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_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.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_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_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_inspector.TestInspect.test_disabled
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_disabled ... 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.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_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_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_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_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_partition_utils.TestGetPartition.test
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... 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_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_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.TestHardwareManagerLoading.test_get_managers
ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... 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_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_partition_utils.TestGetPartition.test_command_fail
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... 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
   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/tmpcouly7tn/tmpirk4uf2r, error: [Errno 21] Is a directory: '/tmp/tmpcouly7tn/tmpirk4uf2r'
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
 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_efi_utils.TestManageUefi.test_no_partition
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_no_partition ... ok
   ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed
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
   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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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("<urllib3.connection.HTTPSConnection object at 0xf4dcd870>: 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_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_agent.TestBaseAgent.test__wait_for_interface_expired
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface_expired ... ok
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp3zvmqxzg/tmpurnwjeln, error: [Errno 21] Is a directory: '/tmp/tmp3zvmqxzg/tmpurnwjeln'
   ERROR [ironic_python_agent.disk_utils] Security: Detected image format was qcow3, but only raw, qcow2 are allowed
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_netutils.TestNetutils.test_get_lldp_info
ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... 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.extensions.test_base.TestExtensionDecorators.test_async_command_success
ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_success ... 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,
                                           **kwargs)
  File "<string>", 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.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_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_agent.TestBaseAgent.test_async_command_success
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_success ... ok
   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,
                                           **kwargs)
  File "<string>", 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/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_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.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.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.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_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_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_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok
ironic_python_agent.tests.unit.test_dmi_inspector.TestCollectDmidecodeInfo.test_dmidecode_info_ok ... ok
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpzkv0bheg/tmppjpd2wwe, error: [Errno 21] Is a directory: '/tmp/tmpzkv0bheg/tmppjpd2wwe'
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpzkv0bheg/tmpaitf8rju, error: [Errno 21] Is a directory: '/tmp/tmpzkv0bheg/tmpaitf8rju'
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.test_raid_utils.TestGetNextFreeRaidDevice.test_ok
ironic_python_agent.tests.unit.test_raid_utils.TestGetNextFreeRaidDevice.test_ok ... 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_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_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_inspector.TestInspect.test_extensions_failed
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... 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_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.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.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_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_nvme_device
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_nvme_device ... 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_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_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_node_uuid
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_node_uuid ... 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
   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,
                                           **kwargs)
  File "<string>", 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_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.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.extensions.test_flow.TestFlowExtension.test_sleep_flow_success
ironic_python_agent.tests.unit.extensions.test_flow.TestFlowExtension.test_sleep_flow_success ... 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
    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,
                                           **kwargs)
  File "<string>", 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.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_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.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.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_inspector.TestCallInspector.test_inspector_error
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... 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/tmpjfpf34ec/tmp9d3n73u2, error: [Errno 21] Is a directory: '/tmp/tmpjfpf34ec/tmp9d3n73u2'
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpjfpf34ec/tmpk7oklv7a, error: [Errno 21] Is a directory: '/tmp/tmpjfpf34ec/tmpk7oklv7a'
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_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_agent.TestAdvertiseAddress.test_route_failed
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_failed ... 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_agent.TestAdvertiseAddress.test_route_retry
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... 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: {}
 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_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.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_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_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_agent.TestAdvertiseAddress.test_route_with_ip
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ip ... 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_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_label
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... 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_efi_utils.TestManageUefi.test_ok
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... 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_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.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_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_inspector.TestInspect.test_inspector_error
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... 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_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_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.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_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_agent.TestFromConfig.test_override_urls
ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... 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_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_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_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_errors.TestErrors.test_RESTError_details
ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... 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_partition_utils.TestGetPartition.test_partuuid
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... 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.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.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_service.TestServiceExtension.test_execute_service_step_tuple_result
ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_tuple_result ... 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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4d053a0>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4d053a0>: 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("<urllib3.connection.HTTPSConnection object at 0xf4d053a0>: 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_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.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_errors.TestErrors.test_error_string
ironic_python_agent.tests.unit.test_errors.TestErrors.test_error_string ... 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.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_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_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.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.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_agent.TestAdvertiseAddress.test_route_with_ipv6
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... 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.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_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.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_service.TestServiceExtension.test_execute_service_step_version_mismatch
ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok
   ERROR [root] Clean version mismatch for command execute_clean_step
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.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.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_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_efi_utils.TestManageUefi.test_wholedisk
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... 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_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_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_inspector.TestInspect.test_mdns
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... 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_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.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_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_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_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_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_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.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_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_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_inspector.TestCollectPciDevicesInfo.test_success
ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success ... 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_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_inject_files.TestFindPartitionWithPath.test_found
ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... 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.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.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_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_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.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_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_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_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.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_agent.TestBaseAgent.test_get_route_source_ipv6
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6 ... 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_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror
ironic_python_agent.tests.unit.test_inspector.TestCollectPciDevicesInfo.test_success_numa_ioerror ... 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
 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_base.TestExecuteCommandMixin.test_busy
ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy ... 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_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_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_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_tls_utils.GenerateTestCase.test__generate
ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test__generate ... 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_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.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_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_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_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_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_utils.TestFailures.test_get_error
ironic_python_agent.tests.unit.test_utils.TestFailures.test_get_error ... 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_execute_command
ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_execute_command ... 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.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.TriggerDeviceRescanTestCase.test_custom_attempts
ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_custom_attempts ... 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.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_efi_utils.TestGetPartitionPathByNumber.test_broken
ironic_python_agent.tests.unit.test_efi_utils.TestGetPartitionPathByNumber.test_broken ... 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.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_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
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_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_disk_utils.ListPartitionsTestCase.test_incorrect
ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ... 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.TestFindPartitionWithPath.test_not_found
ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_not_found ... 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_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_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_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_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_inspector.TestInspect.test_ok
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... 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_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_disk_utils.TriggerDeviceRescanTestCase.test_trigger
ironic_python_agent.tests.unit.test_disk_utils.TriggerDeviceRescanTestCase.test_trigger ... ok
   ERROR [root] Unexpected error dispatching unexpected_fail to manager <ironic_python_agent.tests.unit.test_multi_hardware.FakeMainlineHardwareManager object at 0xf4c62430>: 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.TestCollectSystemLogs.test__collect_udev
ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ... 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_inspector.TestCollectLogs.test
ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... 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_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.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.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_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_missing_device
ironic_python_agent.tests.unit.test_raid_utils.TestRaidUtils.test_create_raid_device_missing_device ... 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_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.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_utils.TestFailures.test_raise
ironic_python_agent.tests.unit.test_utils.TestFailures.test_raise ... 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.test_agent.TestBaseAgent.test_get_status
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... 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_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
   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
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
 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.TestCollectLogs.test_fail
ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test_fail ... 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_delete_not_exists
ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete_not_exists ... 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_uefi
ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_bootloader_uefi ... 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
   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 "<string>", 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_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_utils.TestStreamingClient.test_ok
ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... 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.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_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_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_utils.ExecuteTestCase.test_execute
ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... 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.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_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_get_partition_uuids
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_get_partition_uuids ... 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_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.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.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_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_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_no_files
ironic_python_agent.tests.unit.test_utils.TestCopyConfigFromVmedia.test_no_files ... ok
 WARNING [root] Can't find field vendor for device lo in device class net
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_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.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_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_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_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.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_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_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.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_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_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_standby.TestStandbyExtension.test_power_off
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... 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
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
 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_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_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_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_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_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
 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_agent.TestBaseAgent.test_run
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run ... 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_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_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_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.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_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.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.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_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_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.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_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.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_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_utils.TestRemoveKeys.test_remove_keys
ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... 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_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.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_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.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_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.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_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.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_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.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.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_from_file_reads_minimum ... 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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4c10920>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4c10920>: 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("<urllib3.connection.HTTPSConnection object at 0xf4c10920>: Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)"))
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'
 WARNING [ironic_python_agent.agent] Ironic does not support automated TLS
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_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_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.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.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_prepare_image
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image ... 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_utils.GetAgentParamsTestCase.test__get_vmedia_params
ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... 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.test_inject_files.TestInjectOne.test_url
ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url ... 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_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_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_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.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.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_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_bad_partition
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_image_bad_partition ... 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.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_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_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.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.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_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_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.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.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_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_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_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_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_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_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.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.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.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_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_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_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.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_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_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.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_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.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_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_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_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_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_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.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_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.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_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.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_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_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.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_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_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_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_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_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_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.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.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_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.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.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.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_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_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_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_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_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.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_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_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.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_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_encoding.TestSerializable.test_baseclass_serialize
ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_baseclass_serialize ... 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.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_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_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_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_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_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_encoding.TestSerializable.test_childclass_serialize
ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... 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_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_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_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.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_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_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.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_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_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_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.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.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_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_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.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_prepare_partition_image ... 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
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_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.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_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_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.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_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_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_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.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.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_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_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.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.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_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_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_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.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
 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_run_image
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... 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.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.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_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.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.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_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'
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.TestBaseAgent.test_run_with_inspection
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_inspection ... 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_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_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_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_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_inject_files.TestInjectFiles.test_ok
ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... 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.
 WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger
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.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_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_inject_files.TestInjectFiles.test_verify_false
ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_verify_false ... 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'
 WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2 ... 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
 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_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_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_format_inspector.TestFormatInspectors.test_qcow2_invalid
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_invalid ... 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.
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.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.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_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_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
    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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4b8cd40>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf4b8cd40>: 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("<urllib3.connection.HTTPSConnection object at 0xf4b8cd40>: 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_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_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.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_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists
ironic_python_agent.tests.unit.test_partition_utils.CreateConfigDriveTestCases.test_create_partition_exists ... 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.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_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_agent.TestBaseAgent.test_run_with_ssl
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_with_ssl ... 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_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_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_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.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_format_inspector.TestFormatInspectors.test_qed_always_unsafe
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qed_always_unsafe ... 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'
 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_agent.TestBaseAgent.test_run_without_inspection_and_apiurl
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_without_inspection_and_apiurl ... 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
   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_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.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_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.
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
   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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4c103a0>: Failed to resolve 'example.com' ([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 843, 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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4c103a0>: Failed to resolve 'example.com' ([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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4c103a0>: 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_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_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
 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
 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
    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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4d05f50>: Failed to resolve 'example.com' ([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 843, 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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4d05f50>: Failed to resolve 'example.com' ([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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4d05f50>: 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_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.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_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_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_burnin.TestBurnin.test_fio_disk_default
ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_disk_default ... 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
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_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_image.TestImageExtension.test__is_bootloader_loaded
ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__is_bootloader_loaded ... 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.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__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_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_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
 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_format_inspector.TestFormatInspectors.test_vhd
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... 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_format_inspector.TestFormatInspectors.test_vhd_invalid
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd_invalid ... 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
 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
 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,
    ~~~~~~~~~~~~~~^^^^^^^^
                   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 "/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 "<string>", line 3, in do_not_call
  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
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.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_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
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.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_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_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
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_utils.TestStreamingClient.test_retries
ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... 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_agent.TestAgentStandalone.test_run_no_tls
ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run_no_tls ... 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 199, 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 789, in urlopen
    response = self._make_request(
        conn,
    ...<10 lines>...
        **response_kw,
    )
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
    ~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf49cf030>: 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 843, 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("<urllib3.connection.HTTPSConnection object at 0xf49cf030>: 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("<urllib3.connection.HTTPSConnection object at 0xf49cf030>: 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_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__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_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.TestGenericHardwareManager.test__get_md_uuid
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_md_uuid ... 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_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_hardware.TestGenericHardwareManager.test__is_read_only_device
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device ... ok
 WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: 
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.TestGenericHardwareManager.test__is_read_only_device_false
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__is_read_only_device_false ... ok
 WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: 
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.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_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_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_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_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_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_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_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_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.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_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.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.TestGenericHardwareManager.test_create_configuration_efi
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... 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_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_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_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_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_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_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_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_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_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.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_create_configuration_with_hints
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... 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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... 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_hardware.TestGenericHardwareManager.test_delete_configuration_partition
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration_partition ... 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_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
   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_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_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_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: 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.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_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_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
   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_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_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_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_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
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.
Command: None
Exit code: -
Stdout: 'Booo00000ooommmmm'
Stderr: None
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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default_protected_device ... ok
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_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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_invalid
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_invalid ... ok
 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_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
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 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_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.
Command: None
Exit code: -
Stdout: None
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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_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
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 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
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
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.
Command: None
Exit code: -
Stdout: None
Stderr: None
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_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_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_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.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_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_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
 WARNING [root] Cannot get BMC v6 address: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
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_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.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_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_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.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_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_hardware.TestGenericHardwareManager.test_get_cpus_multi
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ... 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.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.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.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.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
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
 WARNING [root] Could not get real physical RAM from lshw: 
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.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.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 [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
    total = int(psutil.virtual_memory().total)
                ~~~~~~~~~~~~~~~~~~~~~^^
  File "<string>", line 3, in virtual_memory
  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
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 [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
    total = int(psutil.virtual_memory().total)
                ~~~~~~~~~~~~~~~~~~~~~^^
  File "<string>", line 3, in virtual_memory
  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
AttributeError
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
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.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'
 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
 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_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/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'
 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_hardware.TestGenericHardwareManager.test_get_os_install_device_fails
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_fails ... 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.
 WARNING [root] We have identified a multipath device sda1, this is being ignored in favor of dm-0 and its related child devices.
 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
 WARNING [root] We have identified a multipath device sdb, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb2, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb3, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb1, this is being ignored in favor of dm-0 and its related child devices.
 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/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.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
 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.
 WARNING [root] We have identified a multipath device sda1, this is being ignored in favor of dm-0 and its related child devices.
 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
 WARNING [root] We have identified a multipath device sdb, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb2, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb3, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb1, this is being ignored in favor of dm-0 and its related child devices.
 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/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.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
 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_hardware.TestGenericHardwareManager.test_get_os_install_device_raid
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_raid ... 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
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
 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.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.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_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.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.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.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
 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.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.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.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_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.extensions.test_standby.TestStandbyExtension.test_write_image_fails
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_image_fails ... 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 [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_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_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
   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.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.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_write_partition_image_exception ... ok
 WARNING [root] Using hint {'vendor': 'fake-vendor'} skipping devices: /dev/sdb
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 {'wwn': 'fake-wwn'}
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
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_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_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.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_wwn
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_wwn ... 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_hardware.TestGenericHardwareManager.test_get_os_install_device_skip_list_non_exist
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_skip_list_non_exist ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_just_raids
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_just_raids ... 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_get_skip_list_from_node_block_devices_no_skip_list
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_no_skip_list ... ok
 WARNING [root] Using hint {'name': '/dev/sdj'} skipping devices: /dev/sdj
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_with_skip_list
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_with_skip_list ... 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_hardware.TestGenericHardwareManager.test_get_system_vendor_info
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_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
 WARNING [root] Could not retrieve vendor info from lshw: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info_failure
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
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.TestGenericHardwareManager.test_get_usb_devices
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_usb_devices ... 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.TestGenericHardwareManager.test_ipmi_device_exists
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_ipmi_device_exists ... 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
 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.TestGenericHardwareManager.test_list_all_block_device
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device ... 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
 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.TestGenericHardwareManager.test_list_all_block_device_all_serial
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_all_serial ... 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 [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
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_api.TestIronicAPI.test_root
ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... ok
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
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_format_inspector.TestFormatInspectorInfra.test_capture_region
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorInfra.test_capture_region ... 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_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.TestGenericHardwareManager.test_list_all_block_device_with_udev
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_udev ... 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_list_block_devices
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices ... 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
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
 WARNING [root] Using hint {'name': '/dev/sdj'} skipping devices: /dev/sdj
 WARNING [root] Using hint {'name': '/dev/hdaa'} skipping devices: /dev/hdaa
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
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_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_list_block_devices_including_partitions
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_block_devices_including_partitions ... ok
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
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail
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_hardware.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase ... 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
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 [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_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'
 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_validate_configuration_invalid_duplicate_volume_name
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_duplicate_volume_name ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: fail
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_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_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectorsTargeted.test_vhd_table_over_limit ... 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
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
 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_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_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_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_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_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
 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_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_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_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_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_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_inject_files.TestFindAndMountPath.test_with_on_as_path
ironic_python_agent.tests.unit.test_inject_files.TestFindAndMountPath.test_with_on_as_path ... ok
POST: /v1/commands {'name': 'do_things', 'params': []}
GOT:<WrapperTestResponse streamed [400 BAD REQUEST]>
POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands {}
GOT:<WrapperTestResponse streamed [400 BAD REQUEST]>
POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}}
GOT:<WrapperTestResponse streamed [401 UNAUTHORIZED]>
GET: /v1/status None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/commands/abc123 None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/commands None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/foo None
GOT:<WrapperTestResponse streamed [404 NOT FOUND]>
GET: / None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1 None
GOT:<WrapperTestResponse streamed [200 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_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_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.0192412 s, 272 MB/s
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_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.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_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_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_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
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_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/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 "<string>", 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_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_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_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_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup
ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_do_lookup ... 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.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_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.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_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
 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_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_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_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_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_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_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.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_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_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_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_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_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_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_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_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_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
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.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_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_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_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_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_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_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_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_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.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_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_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_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_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_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_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_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_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_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_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_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.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_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_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.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_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.0190775 s, 275 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
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset_stream_optimized
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset_stream_optimized ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Signature KDMV not found: b'# Co'
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Signature KDMV not found: b'# Co'
 WARNING [ironic_python_agent.format_inspector] Unsupported VMDK format b'someunknownformat'
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid_type
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
 WARNING [root] No hardware manager was able to handle interface foobar
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 [root] Cannot find detailed information about interface eth0
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
 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
 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
 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
 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
 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
 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
 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
 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 [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.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_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_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_utils.TestClockSyncUtils.test_sync_clock_chrony
ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... 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_utils.TestClockSyncUtils.test_sync_clock_chrony_failure
ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony_failure ... 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_utils.TestClockSyncUtils.test_sync_clock_ntp
ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_ntp ... 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_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

----------------------------------------------------------------------
Ran 1023 tests in 37.116s

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      12.910
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit                       12.750
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx                                                 4.381
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries                                              4.012
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout   3.024
ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st                                        3.011
ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout                                         2.012
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries_on_50X_error                                 2.008
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed                             2.007
ironic_python_agent.tests.unit.test_agent.TestAgentStandalone.test_run                                                              1.047
+ rm -rf .stestr
+ for pyvers in ${PYTHON3S}
+ '[' 3.12 = disabled ']'
++ echo 3.12
++ cut -d. -f1
+ PYMAJOR=3
+ 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 ']'
+ STESTR=stestr
+ rm -rf .stestr
+ PYTHON=python3.12
+ stestr run --parallel --subunit 'ironic_python_agent\.tests\.unit\.(?!test_inspector\.TestWaitForDhcp\.test_timeout)'
+ subunit2pyunit
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
   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.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
   ERROR [root] Failed to query firmware of device <Mock name='mock.dev_pci' id='4106347408'>: 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
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.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 [ironic_python_agent.utils] failed to run dmidecode: 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
ironic_python_agent.tests.unit.extensions.test_clean.TestCleanExtension.test_execute_clean_step ... 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.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.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
   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 "<string>", 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.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
   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 "<string>", 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
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.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
   ERROR [root] Duplicate componentFlavor MT_0000000540
   ERROR [root] Failed to query tool configuration of device <Mock name='mock.dev_pci' id='4106349568'>: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   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_rescue.TestRescueExtension.test_finalize_rescue
ironic_python_agent.tests.unit.extensions.test_rescue.TestRescueExtension.test_finalize_rescue ... 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.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
   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 "<string>", 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.format_inspector] Format inspector failed, aborting: fail
   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 "<string>", 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
 WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Handle'
   ERROR [root] Failed to query firmware of device <Mock name='mock.dev_pci' id='4106348704'>: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
 WARNING [ironic_python_agent.dmi_inspector] Failed to process memory dmi data: 'Number Of Devices'
 WARNING [root] Device /dev/fake1 is inaccessible, skipping... Error: nope
   ERROR [root] Failed to set configuration of device <Mock name='mock.dev_pci' id='4107743928'>,  ['SRIOV_EN=20']: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
   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 [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: {}
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.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.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.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
 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.)
   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,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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_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,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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/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.inspector] inspector url error 400: <MagicMock name='post().content.decode()' id='4108633456'>, proceeding with lookup
   ERROR [root] Configuraiton ESWITCH_HAIRPIN_TOT_BUFFER_SIZE[8] for device <Mock name='mock.dev_pci' id='4113049664'> is not supported with current fw
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_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.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
   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.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_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.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_encoding.TestSerializableComparable.test_childclass_equal
ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_equal ... 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_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.PopulateImageTestCase.test_populate_qcow2_image
ironic_python_agent.tests.unit.test_disk_utils.PopulateImageTestCase.test_populate_qcow2_image ... 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_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_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.format_inspector] Format inspector failed, aborting: fail
 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 [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
   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,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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_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,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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] No partition with UUID 11111111-2222-3333-4444-555555555555 found on device /dev/fake
   ERROR [root] Configuraiton: UNSUPPORTED_PARAM is not supported by mstconfig, please update to the latest mstflint package.
   ERROR [ironic_python_agent.burnin] SMART test on /dev/sdj failed with 'string'
   ERROR [ironic_python_agent.extensions.standby] Failed to sync hardware clock: Unexpected error while running command.
Command: None
Exit code: -
Stdout: 'boop'
Stderr: None
 WARNING [ironic_python_agent.numa_inspector] Failed to get list of NUMA nodes, NUMA node path does not exist: /sys/devices/system/node/
 WARNING [root] Attempted to invoke multipath utilities, but we encountered an error: 
   ERROR [root] Clean version mismatch for command execute_clean_step
   ERROR [root] Malformed deploy_step, no "step" key: {}
   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
   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.inspector] failed to get system journal
   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 "<string>", 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 "<string>", 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/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_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_partition_utils.TestGetPartition.test
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test ... 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
   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
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.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.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_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_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_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.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
   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,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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
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 "<string>", 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.utils] failed to run hardware-detect utility: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
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
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.TestNvidiaNicConfig.test_validate_config
ironic_python_agent.tests.unit.hardware_managers.nvidia.test_nvidia_fw_update.TestNvidiaNicConfig.test_validate_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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", 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
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_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.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_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure
ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_failure ... ok
 WARNING [root] Attempted to determine if multipath tools were present. Not detected. Error recorded: 
   ERROR [root] Clean version mismatch for command execute_deploy_step
   ERROR [root] Malformed service_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'
   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_python_agent.utils] JSON returned from hardware-detect cannot be decoded: Expecting value: line 1 column 1 (char 0)
 WARNING [root] Something went wrong when readlink for interface eth2. Error: fake
 WARNING [root] Could not determine if /dev/sdfake is aread-only device. Error: 
   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'
   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/tmpz6udk4xr/tmp5q8dxujr, error: [Errno 21] Is a directory: '/tmp/tmpz6udk4xr/tmp5q8dxujr'
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_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs
ironic_python_agent.tests.unit.test_numa_inspector.TestCollectNumaTopologyInfo.test_collect_no_numa_dirs ... ok
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00023889541625976562 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.00023889541625976562 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0006744861602783203 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.0006744861602783203 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0009818077087402344 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.0009818077087402344 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0012753009796142578 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.0012753009796142578 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0015635490417480469 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.0015635490417480469 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.001836538314819336 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.001836538314819336 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0021283626556396484 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.0021283626556396484 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002414703369140625 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.002414703369140625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002703428268432617 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.002703428268432617 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002996206283569336 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.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'}
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpxg_gs10c/tmpmu28s9mz, error: [Errno 21] Is a directory: '/tmp/tmpxg_gs10c/tmpmu28s9mz'
   ERROR [ironic_python_agent.utils] Unable to sync clock, available methods of 'ntpdate' or 'chrony' not found.
   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.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.extensions.standby] URL: http://example.org; time: 0.00015592575073242188 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.00015592575073242188 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0005257129669189453 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.0005257129669189453 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.0008447170257568359 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.0008447170257568359 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0011477470397949219 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.0011477470397949219 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0014493465423583984 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.0014493465423583984 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0017256736755371094 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.0017256736755371094 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0019903182983398438 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.0019903182983398438 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002263784408569336 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.002263784408569336 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0025391578674316406 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.0025391578674316406 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0028035640716552734 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpgjzss44w/tmplbl8ve41, error: [Errno 21] Is a directory: '/tmp/tmpgjzss44w/tmplbl8ve41'
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmpgjzss44w/tmp6tvgd7oe, error: [Errno 21] Is a directory: '/tmp/tmpgjzss44w/tmp6tvgd7oe'
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_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_inspector.TestCollectLogs.test
ironic_python_agent.tests.unit.test_inspector.TestCollectLogs.test ... 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.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 WARNING [root] Could not determine if /dev/sdfake1 is aread-only device. Error: 
 ... 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
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_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
 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}
   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_hardware.TestGenericHardwareManager.test__find_pstore_mount_point
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__find_pstore_mount_point ... ok
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00016021728515625 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.00016021728515625 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0005056858062744141 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.0005056858062744141 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0007834434509277344 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.0007834434509277344 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0010514259338378906 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.0010514259338378906 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0013155937194824219 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.0013155937194824219 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)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00157928466796875 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.00157928466796875 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0018489360809326172 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.0018489360809326172 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   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.extensions.standby] URL: http://example.org; time: 0.002124786376953125 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.002124786376953125 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0023920536041259766 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.efi_utils] Empty EFI partition detected.
 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.0023920536041259766 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0026540756225585938 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
   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
   ERROR [root] duplicate settings for device ID 1017 
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp_1qil_fr/tmp1irn6rpb, error: [Errno 21] Is a directory: '/tmp/tmp_1qil_fr/tmp1irn6rpb'
 WARNING [ironic_lib.utils] Failed to unlink /tmp/tmp_1qil_fr/tmpz9ipkf9t, error: [Errno 21] Is a directory: '/tmp/tmp_1qil_fr/tmpz9ipkf9t'
 WARNING [ironic_python_agent.ironic_api_client] Got invalid heartbeat from the API: {'node': {'uuid': 'deadbeef-dabb-ad00-b105-f00d00bab10c'}}
   ERROR [root] There is no deviceID provided for this settings
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00019216537475585938 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.00019216537475585938 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0005824565887451172 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.0005824565887451172 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0008852481842041016 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.0008852481842041016 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0011510848999023438 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.0011510848999023438 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0013823509216308594 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.0013823509216308594 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0016734600067138672 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.0016734600067138672 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.001971006393432617 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.001971006393432617 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0022487640380859375 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.0022487640380859375 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0025243759155273438 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.0025243759155273438 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0028007030487060547 seconds. Error: Missing ['user', 'password'] fields from HTTP(S) basic auth config
 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
   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 "<string>", 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: 'boom'
Stderr: None
 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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0016756057739257812 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.0016756057739257812 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.002233266830444336 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.002233266830444336 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0027124881744384766 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.0027124881744384766 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0031957626342773438 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.0031957626342773438 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.003690481185913086 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.003690481185913086 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004185676574707031 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.004185676574707031 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.004686832427978516 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.004686832427978516 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005193233489990234 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.005193233489990234 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.005695343017578125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 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.005695343017578125 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.00619196891784668 seconds. Error: Received status code 404 from http://example.org, expected 200. Response body: <MagicMock name='get().text' id='4106073768'> Response headers: <MagicMock name='get().headers' id='4106096760'>
   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: -
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,
  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 "<string>", 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 1202, in _execute_mock_call
    raise result
oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command.
Command: None
Exit code: -
Stdout: 'boom'
Stderr: None
   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_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_hardware.TestGenericHardwareManager.test__get_device_info
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test__get_device_info ... ok
 WARNING [ironic_python_agent.disk_utils] Unable to get partition table type for device hello
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.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_deploy.TestDeployExtension.test_execute_deploy_step_fail
ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_fail ... ok
   ERROR [ironic_python_agent.disk_utils] Security: Unable to safety check image
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_encoding.TestSerializableComparable.test_childclass_notequal
ironic_python_agent.tests.unit.test_encoding.TestSerializableComparable.test_childclass_notequal ... 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.disk_utils] Security: Image failed safety check
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_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails
ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_ll_fails ... 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,
  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 "<string>", 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 1202, 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_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result
ironic_python_agent.tests.unit.extensions.test_deploy.TestDeployExtension.test_execute_deploy_step_tuple_result ... 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_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf
ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_mpathconf ... 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_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.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_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.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.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_hardware.TestCollectSystemLogs.test__collect_udev
ironic_python_agent.tests.unit.test_hardware.TestCollectSystemLogs.test__collect_udev ... 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_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_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_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
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0014617443084716797 seconds. Error: Received status code 401 from http://example.org, expected 200. Response body: Unauthorized Response headers: <MagicMock name='get().headers' id='4107955944'>
   ERROR [ironic_python_agent.agent] error sending heartbeat to <Mock name='mock.api_urls' id='4105422072'>
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!
   ERROR [ironic_python_agent.extensions.standby] Image failed to verify against checksum. location: /tmp/tmpyr_30484/fake_id; image ID: fake_id; image checksum: fake-checksum; verification checksum: invalid-checksum
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_hardware.TestListHardwareInfo.test_caching
ironic_python_agent.tests.unit.test_hardware.TestListHardwareInfo.test_caching ... 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.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
   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: 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_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_inspector.TestCallInspector.test_inspector_error
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_error ... 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.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: <MagicMock name='get().headers' id='4107218112'>
 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: <MagicMock name='get().headers' id='4107218112'>
 WARNING [ironic_python_agent.extensions.standby] URL: http://example.org; time: 0.0022728443145751953 seconds. Error: Received status code 500 from http://example.org, expected 200. Response body: Oops Response headers: <MagicMock name='get().headers' id='4107218112'>
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.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.test_inspector.TestCollectExtraHardware.test_parsing_failed
ironic_python_agent.tests.unit.test_inspector.TestCollectExtraHardware.test_parsing_failed ... 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_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_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: 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_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_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
   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
 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: <Mock name='mock.headers' id='4106194280'>
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: Did not identify any virtual media candidates devices.
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_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_partition_utils.TestGetPartition.test_command_fail
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_command_fail ... ok
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
   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 "<string>", 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.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.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.TestMultipathEnabled.test_enable_multipath_with_config
ironic_python_agent.tests.unit.test_hardware.TestMultipathEnabled.test_enable_multipath_with_config ... 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_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_partition_utils.TestGetPartition.test_label
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_label ... 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_partition_utils.TestGetPartition.test_partuuid
ironic_python_agent.tests.unit.test_partition_utils.TestGetPartition.test_partuuid ... 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_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_utils.TestClockSyncUtils.test_sync_clock_chrony
ironic_python_agent.tests.unit.test_utils.TestClockSyncUtils.test_sync_clock_chrony ... ok
 WARNING [root] The root device was not detected in 27 seconds
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_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_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_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_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
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.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_log.TestLogExtension.test_collect_system_logs
ironic_python_agent.tests.unit.extensions.test_log.TestLogExtension.test_collect_system_logs ... ok
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
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.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_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
 WARNING [root] The root device was not detected in 45 seconds
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_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_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.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_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.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.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_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_service.TestServiceExtension.test_execute_service_step_version_mismatch
ironic_python_agent.tests.unit.extensions.test_service.TestServiceExtension.test_execute_service_step_version_mismatch ... ok
   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
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_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.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
   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
 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.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
 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
   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.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.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
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 ...  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
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
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.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.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_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_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_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.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] 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 "<string>", 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.
 WARNING [root] The root device was not detected in 27 seconds
ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy
ironic_python_agent.tests.unit.extensions.test_base.TestExecuteCommandMixin.test_busy   ERROR [ironic_python_agent.extensions.image] Error setting up bootloader. Error meow
 ... ok
ironic-python-agent: Device sdh was disqualified as virtual media. Type: other, Transport: usb
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_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_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.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.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_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_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.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.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_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   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
 ... 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.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 [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 "<string>", 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
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: Excluding device sdh1 from virtual mediaconsideration as it is a partition.
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_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
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.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.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.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.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
/bin/sh: line 1: mkisofs: command not found
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_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_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_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_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_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_efi_utils.TestManageUefi.test_failure
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_failure ... 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_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_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_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_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_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.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.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 [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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4466108>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4466108>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4466108>: Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)"))
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
 WARNING [ironic_python_agent.agent] Ironic does not support automated TLS
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
 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
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_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.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: Device sdh was disqualified as virtual media. Type: disk, Transport: sata
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_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute
ironic_python_agent.tests.unit.test_base.DontBlockExecuteTestCase.test_no_exception_raised_for_execute ... 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: Device sdh was disqualified as virtual media. Type: other, Transport: scsi
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.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
   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
   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.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.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: Device sdh appears to not qualify as virtual due to the device size. Size: 1610612736000
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: Device sdh was disqualified as virtual media. Type: disk, Transport: usb
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_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.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_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.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_inspector.TestWaitForDhcp.test_all
ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_all ... 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_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_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.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_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_apply_configuration
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration ... 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.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.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.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_agent.TestHeartbeater.test__heartbeat_expected
ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test__heartbeat_expected ... 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_base.TestExtensionDecorators.test_async_command_name
ironic_python_agent.tests.unit.extensions.test_base.TestExtensionDecorators.test_async_command_name ... ok
/bin/sh: line 1: mkisofs: command not found
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.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.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_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_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.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_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.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.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.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_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
/bin/sh: line 1: mkisofs: command not found
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.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_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.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test__message_format_partition_uefi ... 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.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.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_utils.TestStreamingClient.test_ok
ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_ok ... 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_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.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_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.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_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.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_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.TestWaitForDhcp.test_disabled
ironic_python_agent.tests.unit.test_inspector.TestWaitForDhcp.test_disabled ... 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_agent.TestBaseAgent.test__wait_for_interface
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test__wait_for_interface ... 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.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_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.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_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_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_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_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_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.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.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.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.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_apply_configuration_no_delete
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_apply_configuration_no_delete ... 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_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.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_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_inject_files.TestValidateFiles.test_numeric_fields
ironic_python_agent.tests.unit.test_inject_files.TestValidateFiles.test_numeric_fields ... 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_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_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_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
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
 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'
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 WARNING [root] Could not find the SCSI address (HCTL) for device /dev/sdb. Skipping
 ... ok
 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_agent.TestHeartbeater.test_heartbeat
ironic_python_agent.tests.unit.test_agent.TestHeartbeater.test_heartbeat ... 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.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc
ironic_python_agent.tests.unit.test_partition_utils.GetLabelledPartitionTestCases.test_get_partition_DeployFail_exc ... ok
 WARNING [root] Can't find field vendor for device lo in device class net
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_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_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.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_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.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.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_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_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_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_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_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_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_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.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_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__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.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_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.ListPartitionsTestCase.test_incorrect
ironic_python_agent.tests.unit.test_disk_utils.ListPartitionsTestCase.test_incorrect ... 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_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_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.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_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.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_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_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_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.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.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_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_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_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_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_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_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_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_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_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_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.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_async_command_failure
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_async_command_failure ... 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_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_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.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.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.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.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_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_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_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_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.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_inspector.TestNormalizeMac.test_correct_mac
ironic_python_agent.tests.unit.test_inspector.TestNormalizeMac.test_correct_mac ... 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_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.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_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.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
 WARNING [root] Can't find field vendor for device lo in device class net
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_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.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_efi_utils.TestManageUefi.test_ok
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_ok ... 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_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_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_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_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.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_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_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_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_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_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_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_utils.GetAgentParamsTestCase.test__get_vmedia_params
ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test__get_vmedia_params ... 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_encoding.TestSerializable.test_childclass_serialize
ironic_python_agent.tests.unit.test_encoding.TestSerializable.test_childclass_serialize ... 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 ...    ERROR [ironic_python_agent.utils] collector <Mock name='mock.name' id='4108446696'> failed: boom
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.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_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral
ironic_python_agent.tests.unit.test_partition_utils.WorkOnDiskTestCase.test_preserve_ephemeral ... 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.extensions.test_standby.TestStandbyExtension.test_image_location
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_image_location ... 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'.
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
 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_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_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.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_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_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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration ... 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.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_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_agent.TestFromConfig.test_override_urls
ironic_python_agent.tests.unit.test_agent.TestFromConfig.test_override_urls ... 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_efi_utils.TestManageUefi.test_wholedisk
ironic_python_agent.tests.unit.test_efi_utils.TestManageUefi.test_wholedisk ... 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_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_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_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_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_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_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_standby.TestStandbyExtension.test_power_off
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_power_off ... 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_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_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_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_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_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_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_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_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_agent.TestAdvertiseAddress.test_route_retry
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_retry ... 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_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.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_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_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_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__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_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.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_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_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom
ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_rom ... ok
 WARNING [root] No hardware manager was able to handle interface foobar
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_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_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.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.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_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia
ironic_python_agent.tests.unit.test_agent.TestBaseAgentVMediaToken.test_run_agent_token_vmedia ... 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf441c570>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf441c570>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf441c570>: 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_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_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.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_efi
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_efi ... 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_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.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_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_found
ironic_python_agent.tests.unit.test_inject_files.TestFindPartitionWithPath.test_found ... 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_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
   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_base.BlockExecuteTestCase.test_exception_raised_for_execute
ironic_python_agent.tests.unit.test_base.BlockExecuteTestCase.test_exception_raised_for_execute ... 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_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
 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_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_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_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline
ironic_python_agent.tests.unit.test_utils.GetAgentParamsTestCase.test_get_agent_params_kernel_cmdline ... ok
   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 "<string>", 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.
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_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_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_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_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large
ironic_python_agent.tests.unit.test_utils.TestCheckVirtualMedia.test_check_vmedia_device_too_large ... 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.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_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.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.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_encoding.TestEncoder.test_encoder
ironic_python_agent.tests.unit.test_encoding.TestEncoder.test_encoder ... 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_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_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_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_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_api.TestIronicAPI.test_not_found
ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_not_found ... 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_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_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_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_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_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_api.TestIronicAPI.test_root
ironic_python_agent.tests.unit.test_api.TestIronicAPI.test_root ... 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_inspector.TestMisc.test_raise_on_wrong_collector
ironic_python_agent.tests.unit.test_inspector.TestMisc.test_raise_on_wrong_collector ... ok
 WARNING [root] Cannot find detailed information about interface eth0
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.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_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_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_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.TestAdvertiseAddress.test_route_with_ipv6
ironic_python_agent.tests.unit.test_agent.TestAdvertiseAddress.test_route_with_ipv6 ... 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_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_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_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_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_inject_files.TestInjectFiles.test_empty
ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_empty ... 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.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_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_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_route_source_ipv6_linklocal ... 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_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info
ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_bad_nodes_memory_info ... 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.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_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_invalid_raid_config ... 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
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_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.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.ExecuteTestCase.test_execute
ironic_python_agent.tests.unit.test_utils.ExecuteTestCase.test_execute ... 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_agent.TestBaseAgent.test_get_status
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_get_status ... 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_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_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_inject_files.TestInjectFiles.test_ok
ironic_python_agent.tests.unit.test_inject_files.TestInjectFiles.test_ok ... 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.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_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.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_implicit_with_secure_boot
ironic_python_agent.tests.unit.test_utils.TestUtils.test_boot_mode_implicit_with_secure_boot ... 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
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_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_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_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_inspector.TestInspect.test_collector_failed
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collector_failed ... 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_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.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_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_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_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 [root] Cannot find detailed information about interface eth0
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.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_create_configuration_mismatching_hints
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_mismatching_hints ... 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_standby.TestStandbyExtension.test_run_image
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_image ... ok
 WARNING [ironic_python_agent.extensions.standby] reboot command has been ignored, falling back to sysrq-trigger
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_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_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 [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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf427cb88>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf427cb88>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf427cb88>: Failed to resolve 'fake_api.example.org' ([Errno -2] Name or service not known)"))
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
 WARNING [ironic_python_agent.agent] Ironic does not support automated TLS
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_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_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_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_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.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.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_inspector.TestInspect.test_collectors_option
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_collectors_option ... 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_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.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_run_shutdown_command_valid ... 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.
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_successful_heartbeat_ip6
ironic_python_agent.tests.unit.test_ironic_api_client.TestBaseIronicPythonAgent.test_successful_heartbeat_ip6 ... 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_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_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_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_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_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.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.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_create_configuration_raid_5
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_5 ... 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_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.test_utils.TestUtils.test_device_extractor
ironic_python_agent.tests.unit.test_utils.TestUtils.test_device_extractor ... 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_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_utils.TestUtils.test_extract_capability_from_dict
ironic_python_agent.tests.unit.test_utils.TestUtils.test_extract_capability_from_dict ... ok
 WARNING [root] Cannot find detailed information about interface bond0
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_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_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_raid_6
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_raid_6 ... 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_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.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_netutils.TestNetutils.test_get_lldp_info
ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_get_lldp_info ... 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_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit
ironic_python_agent.tests.unit.test_numa_inspector.TestGetNumaTopologyInfo.test_nodes_invalid_memory_unit ... 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
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
 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_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
 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.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp
ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp ... 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__install_grub2_uefi_no_fstab
ironic_python_agent.tests.unit.extensions.test_image.TestImageExtension.test__install_grub2_uefi_no_fstab ... ok
 WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth0', <Mock id='4107611184'>), ('eth1', <Mock id='4107610896'>)]
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.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_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_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_create_configuration_with_complete_skip_list
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_complete_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_lldp_error
ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_interfaces_with_lldp_error ... 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4284bd0>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4284bd0>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4284bd0>: 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_get_journalctl_output
ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output ... ok
 WARNING [ironic_python_agent.netutils] Trailing byte received in an LLDP package: b'5'
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
   ERROR [ironic_python_agent.utils] boom
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_extensions_failed
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_extensions_failed ... 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.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_utils.TestUtils.test_get_journalctl_output_fail
ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_fail ... 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_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_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_utils.TestUtils.test_get_journalctl_output_with_lines
ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_journalctl_output_with_lines ... 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_create_configuration_with_hints
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_create_configuration_with_hints ... 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
 WARNING [ironic_python_agent.netutils] LLDP timed out, remaining interfaces: [('eth1', <Mock id='4107574200'>)]
 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_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.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
   ERROR [root] Unexpected error dispatching unexpected_fail to manager <ironic_python_agent.tests.unit.test_multi_hardware.FakeMainlineHardwareManager object at 0xf43af7b0>: 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_utils.TestUtils.test_get_ssl_client_options
ironic_python_agent.tests.unit.test_utils.TestUtils.test_get_ssl_client_options ... 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_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
 WARNING [root] Cannot find detailed information about interface eth0.101
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_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_inspector.TestInspect.test_inspector_error
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_inspector_error ... 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf42327f8>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf42327f8>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf42327f8>: 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_agent.TestBaseAgent.test_run_raise_keyboard_interrupt
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_run_raise_keyboard_interrupt ... 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
    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.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: BOOM
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_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_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
 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
 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
 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
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
 WARNING [root] Cannot find detailed information about interface eth1.102
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_delete_configuration
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_delete_configuration ... 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 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
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
ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_raw_promiscuous_sockets ... 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.netutils] Failed to open all RawPromiscuousSockets, attempting to close any opened sockets.
   ERROR [root] Unable to clean all softraid correctly. Remaining ['/dev/md0']
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.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_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_inspector.TestInspect.test_mdns
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_mdns ... ok
 WARNING [root] Can't find field vendor for device lo in device class net
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
   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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf41caa50>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf41caa50>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf41caa50>: 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_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_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_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_netutils.TestNetutils.test_wrap_ipv6
ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6 ... ok
 WARNING [root] Cannot find detailed information about interface eth0
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_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.TestListNetworkInterfaces.test_list_network_vlan_invalid_int
ironic_python_agent.tests.unit.test_hardware.TestListNetworkInterfaces.test_list_network_vlan_invalid_int ... 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_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_netutils.TestNetutils.test_wrap_ipv6_with_ipv4
ironic_python_agent.tests.unit.test_netutils.TestNetutils.test_wrap_ipv6_with_ipv4 ... 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
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
 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_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_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_inspector.TestInspect.test_ok
ironic_python_agent.tests.unit.test_inspector.TestInspect.test_ok ... 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_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_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
   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.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only
ironic_python_agent.tests.unit.test_multi_hardware.TestMultipleHardwareManagerLoading.test_mainline_method_only ... 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_specified_partition_table_type_gpt
ironic_python_agent.tests.unit.test_utils.TestUtils.test_specified_partition_table_type_gpt ... 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
 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
   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_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_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_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_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_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_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_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
 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_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_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_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
   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
 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_frozen
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_frozen ... 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.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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf41ef738>: 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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf41ef738>: 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf41ef738>: 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_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_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_format_inspector.TestFormatInspectors.test_qcow2_safety_checks
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_qcow2_safety_checks ... 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_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
   ERROR [root] Unexpected error dispatching unexpected_fail to manager <ironic_python_agent.tests.unit.test_multi_hardware.FakeMainlineHardwareManager object at 0xf4387438>: 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_ata_security_enabled_unlock_attempt
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_ata_security_enabled_unlock_attempt ... 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.
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
   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.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
/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_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_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_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_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_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_tls_utils.GenerateTestCase.test_generate
ironic_python_agent.tests.unit.test_tls_utils.GenerateTestCase.test_generate ... 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.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 [root] Unable to execute `smartctl` utility: boom
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_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
POST: /v1/commands {'name': 'do_things', 'params': []}
GOT:<WrapperTestResponse streamed [400 BAD REQUEST]>
POST: /v1/commands {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=false {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=true {'name': 'do_things', 'params': {'key': 'value'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands {}
GOT:<WrapperTestResponse streamed [400 BAD REQUEST]>
POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}}
GOT:<WrapperTestResponse streamed [200 OK]>
POST: /v1/commands?wait=false?agent_token=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 {'name': 'do_things', 'params': {'key': 'value', 'wait': False, 'agent_token': '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789'}}
GOT:<WrapperTestResponse streamed [401 UNAUTHORIZED]>
GET: /v1/status None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/commands/abc123 None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/commands None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1/foo None
GOT:<WrapperTestResponse streamed [404 NOT FOUND]>
GET: / None
GOT:<WrapperTestResponse streamed [200 OK]>
GET: /v1 None
GOT:<WrapperTestResponse streamed [200 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_nosecurity_shred
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nosecurity_shred ... 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'
 WARNING [ironic_python_agent.agent] Could not get baremetal endpoint from mDNS, will not heartbeat
 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 [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.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_notsupported_shred
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_notsupported_shred ... 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
 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_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.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_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_failed ... 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
   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.
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_nvme_userdata_success
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_nvme_userdata_success ... 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4147ab0>: Failed to resolve 'example.com' ([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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4147ab0>: Failed to resolve 'example.com' ([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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4147ab0>: 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_agent.TestBaseAgent.test_url_from_mdns_by_default
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_by_default ... 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 "<string>", 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_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
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] 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
   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_erase_block_device_shred_uses_internal_info
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_block_device_shred_uses_internal_info ... 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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 199, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 490, in _make_request
    raise new_e
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 466, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1095, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 693, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 206, in _new_conn
    raise NameResolutionError(self.host, self, e) from e
urllib3.exceptions.NameResolutionError: <urllib3.connection.HTTPSConnection object at 0xf4cd6b40>: Failed to resolve 'example.com' ([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(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  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("<urllib3.connection.HTTPSConnection object at 0xf4cd6b40>: Failed to resolve 'example.com' ([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,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  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='example.com', port=443): Max retries exceeded with url: / (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0xf4cd6b40>: 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.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_agent.TestBaseAgent.test_url_from_mdns_explicitly
ironic_python_agent.tests.unit.test_agent.TestBaseAgent.test_url_from_mdns_explicitly ... 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
   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_format_inspector.TestFormatInspectors.test_vdi
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vdi ... 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.test_errors.TestErrors.test_RESTError_details
ironic_python_agent.tests.unit.test_errors.TestErrors.test_RESTError_details ... ok
   ERROR [root] Failed to open URL data: <urlopen error URL error>
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.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_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_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_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.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.TestGenericHardwareManager.test_erase_devices_concurrency
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_concurrency ... 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
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_utils.TestRemoveKeys.test_remove_keys
ironic_python_agent.tests.unit.test_utils.TestRemoveKeys.test_remove_keys ... ok
   ERROR [root] The provided psid MT_0000000227 does not match the image psid MT_0000000228
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
   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_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_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_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
 WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding!
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_hardware.TestGenericHardwareManager.test_erase_devices_express
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_express ... ok
 WARNING [ironic_python_agent.raid_utils] Found /dev/sdb1 to be missing from /dev/md0 ... re-adding!
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_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_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_format_inspector.TestFormatInspectors.test_vhd
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhd ... 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_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_metadata
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_metadata ... 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_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
   ERROR [root] Failed to erase the metadata on device "/dev/sdb". Error: Unexpected error while running command.
Command: None
Exit code: -
Stdout: 'Booo00000ooommmmm'
Stderr: None
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_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_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_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_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
   ERROR [ironic_python_agent.utils] foo
   ERROR [ironic_python_agent.utils] bar
   ERROR [ironic_python_agent.utils] baz
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
   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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_devices_no_parallel_by_default_protected_device ... ok
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_utils.TestStreamingClient.test_retries
ironic_python_agent.tests.unit.test_utils.TestStreamingClient.test_retries ... 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_erase_pstore
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_erase_pstore ... 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
 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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_invalid
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_address_invalid ... ok
 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_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
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 WARNING [root] Invalid IP address : '' does not appear to be an IPv4 or IPv6 address
 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_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.
Command: None
Exit code: -
Stdout: None
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_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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_bmc_mac_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
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 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
 WARNING [root] Invalid ipmitool output 
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
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.
Command: None
Exit code: -
Stdout: None
Stderr: None
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_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_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_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.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_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_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
 WARNING [root] Cannot get BMC v6 address: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
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_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.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_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_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.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_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_hardware.TestGenericHardwareManager.test_get_cpus_multi
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_cpus_multi ... 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.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.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.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.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
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
 WARNING [root] Could not get real physical RAM from lshw: 
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.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.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 [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
    total = int(psutil.virtual_memory().total)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", line 3, in virtual_memory
  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
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 [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
    total = int(psutil.virtual_memory().total)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", line 3, in virtual_memory
  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
AttributeError
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
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
   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_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'
 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
 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_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/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'
 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_hardware.TestGenericHardwareManager.test_get_os_install_device_fails
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_fails ... 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.
 WARNING [root] We have identified a multipath device sda1, this is being ignored in favor of dm-0 and its related child devices.
 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
 WARNING [root] We have identified a multipath device sdb, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb2, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb3, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb1, this is being ignored in favor of dm-0 and its related child devices.
 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/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.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
 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.
 WARNING [root] We have identified a multipath device sda1, this is being ignored in favor of dm-0 and its related child devices.
 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
 WARNING [root] We have identified a multipath device sdb, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb2, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb3, this is being ignored in favor of dm-0 and its related child devices.
 WARNING [root] We have identified a multipath device sdb1, this is being ignored in favor of dm-0 and its related child devices.
 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/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.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
 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_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_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.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.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.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
 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.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.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_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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_size_str ... ok
 WARNING [root] Using hint {'vendor': 'fake-vendor'} skipping devices: /dev/sdb
 WARNING [ironic_lib.utils] No device found that matches the root device hints {'wwn': 'fake-wwn'}
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
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
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_root_device_hints_wwn ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_skip_list_non_exist
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_os_install_device_skip_list_non_exist ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_just_raids
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_just_raids ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_no_skip_list
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_no_skip_list ... ok
 WARNING [root] Using hint {'name': '/dev/sdj'} skipping devices: /dev/sdj
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_with_skip_list
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_skip_list_from_node_block_devices_with_skip_list ... ok
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info ... ok
 WARNING [root] Could not retrieve vendor info from lshw: Unexpected error while running command.
Command: None
Exit code: -
Stdout: None
Stderr: None
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_get_system_vendor_info_failure
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
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_hardware.TestGenericHardwareManager.test_ipmi_device_exists
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_ipmi_device_exists ... ok
 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.TestGenericHardwareManager.test_list_all_block_device
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device ... 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.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
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.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.TestGenericHardwareManager.test_list_all_block_device_with_udev
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_list_all_block_device_with_udev ... ok
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.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] Using hint {'name': '/dev/hdaa'} skipping devices: /dev/hdaa
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
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
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.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_normal_vs_enhanced_security_erase ... 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'
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] 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_validate_configuration_invalid_MAX_MAX
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_MAX_MAX ... 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
 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_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
 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_validate_configuration_invalid_duplicate_volume_name
ironic_python_agent.tests.unit.test_hardware.TestGenericHardwareManager.test_validate_configuration_invalid_duplicate_volume_name ... 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_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_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_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
 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_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_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_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_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_hardware.TestHardwareManagerLoading.test_get_managers
ironic_python_agent.tests.unit.test_hardware.TestHardwareManagerLoading.test_get_managers ... ok
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
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
 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_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_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
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
 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
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
 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
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
 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
 WARNING [root] Mismatched hardware managers versions. Agent version: {'specific': '1'}, node version: {'not_specific': '1'}
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_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_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_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_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_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_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.GetConfigdriveTestCase.test_get_configdrive_ssl
ironic_python_agent.tests.unit.test_partition_utils.GetConfigdriveTestCase.test_get_configdrive_ssl ... 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_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.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_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.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
 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_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
 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.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.TestInjectOne.test_delete
ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_delete ... 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_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_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_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_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
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_inject_files.TestInjectOne.test_url_formatting
ironic_python_agent.tests.unit.test_inject_files.TestInjectOne.test_url_formatting ... 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_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_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_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
   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
ironic_python_agent.tests.unit.test_disk_utils.GetAndValidateImageFormat.test_format_mismatch ... 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
   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_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_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.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_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_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.0190185 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
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_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_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.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_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_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_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.0194242 s, 270 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
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Wrong descriptor location
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset_stream_optimized
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_offset_stream_optimized ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Signature KDMV not found: b'# Co'
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid ... ok
   ERROR [ironic_python_agent.format_inspector] Format inspector failed, aborting: Signature KDMV not found: b'# Co'
 WARNING [ironic_python_agent.format_inspector] Unsupported VMDK format b'someunknownformat'
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_invalid_type
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: line 1.
ironic-python-agent: line 2 message
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: Copying configuration from /tmp/tmp4oje81r2/etc/ironic-python-agent to /etc/ironic-python-agent
ironic-python-agent: Copying configuration from /tmp/tmp4oje81r2/etc/ironic-python-agent.d to /etc/ironic-python-agent.d
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/tmp20wdlsur/etc/ironic-python-agent to /etc/ironic-python-agent
ironic-python-agent: Copying configuration from /tmp/tmp20wdlsur/etc/ironic-python-agent.d to /etc/ironic-python-agent.d
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
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: /tmp/tmp35s5l4tw/etc/ironic-python-agent not found
ironic-python-agent: /tmp/tmp35s5l4tw/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_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.
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

----------------------------------------------------------------------
Ran 1023 tests in 39.511s

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      13.797
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vmdk_bad_descriptor_mem_limit                       13.587
ironic_python_agent.tests.unit.test_format_inspector.TestFormatInspectors.test_vhdx                                                 5.121
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retries                                              4.012
ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_pair_1st                                        3.018
ironic_python_agent.tests.unit.extensions.test_standby.TestStandbyExtension.test_stream_raw_image_onto_device_socket_read_timeout   3.017
ironic_python_agent.tests.unit.test_inspector.TestCallInspector.test_inspector_retry_on_50X_and_succeed                             2.011
ironic_python_agent.tests.unit.test_burnin.TestBurnin.test_fio_network_dynamic_find_timeout                                         2.011
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.097
+ 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 \
	--output-file /build/reproducible-path/ironic-python-agent-9.14.0/debian/ironic-python-agent/etc/ironic-python-agent/ironic-python-agent.conf \
	--wrap-width 140 \
	--namespace ironic-python-agent
dh_install
pkgos-fix-config-default  DEFAULT collect_lldp true
pkgos_inifile: Setting value in DEFAULT:[collect_lldp]/true
Config file DEFAULT not readable: exiting
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   dh_installdocs -O--buildsystem=pybuild
   debian/rules override_dh_installchangelogs
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
if [ -e /build/reproducible-path/ironic-python-agent-9.14.0/debian/CHANGELOG ] ; then \
	dh_installchangelogs /build/reproducible-path/ironic-python-agent-9.14.0/debian/CHANGELOG ; \
else \
	dh_installchangelogs ; \
fi
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   debian/rules override_dh_python3
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
dh_python3 --shebang=/usr/bin/python3
I: dh_python3 tools:113: replacing shebang in debian/ironic-python-agent/usr/bin/ironic-python-agent
I: dh_python3 tools:113: replacing shebang in debian/ironic-python-agent/usr/bin/ironic-collect-introspection-data
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   debian/rules override_dh_installinit
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
# Create the init scripts and systemd unit files from the template
set -e ; set -x ; for i in `ls -1 debian/*.init.in` ; do \
	MYINIT=`echo $i | sed s/.init.in//` ; \
	cp $i $MYINIT.init ; \
	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
+ 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
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: 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 \
	MYINIT=`echo $i | sed s/.init.in/.service.in/` ; \
	if ! [ -e $MYINIT ] ; then \
		pkgos-gen-systemd-unit $i ; \
	fi \
done
++ 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 ']'
+ pkgos-gen-systemd-unit debian/ironic-python-agent.init.in
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
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
# Create the init scripts and systemd unit files from the template
set -e ; set -x ; for i in `ls -1 debian/*.init.in` ; do \
	MYINIT=`echo $i | sed s/.init.in//` ; \
	cp $i $MYINIT.init ; \
	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
+ 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
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: 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 \
	MYINIT=`echo $i | sed s/.init.in/.service.in/` ; \
	if ! [ -e $MYINIT ] ; then \
		pkgos-gen-systemd-unit $i ; \
	fi \
done
++ 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 ']'
+ pkgos-gen-systemd-unit debian/ironic-python-agent.init.in
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
   dh_perl -O--buildsystem=pybuild
   dh_link -O--buildsystem=pybuild
   dh_strip_nondeterminism -O--buildsystem=pybuild
   dh_compress -O--buildsystem=pybuild
   dh_fixperms -O--buildsystem=pybuild
   dh_missing -O--buildsystem=pybuild
   dh_installdeb -O--buildsystem=pybuild
   debian/rules override_dh_gencontrol
make[1]: Entering directory '/build/reproducible-path/ironic-python-agent-9.14.0'
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
if dpkg-vendor --derives-from ubuntu ; then \
	dh_gencontrol -- -T/build/reproducible-path/ironic-python-agent-9.14.0/debian/ubuntu_control_vars ; \
else \
	dh_gencontrol -- -T/build/reproducible-path/ironic-python-agent-9.14.0/debian/debian_control_vars ; \
fi
dpkg-gencontrol: warning: Depends field of package ironic-python-agent: substitution variable ${ostack-lsb-base} used, but is not defined
make[1]: Leaving directory '/build/reproducible-path/ironic-python-agent-9.14.0'
   dh_md5sums -O--buildsystem=pybuild
   dh_builddeb -O--buildsystem=pybuild
dpkg-deb: building package 'ironic-python-agent' in '../ironic-python-agent_9.14.0-5_all.deb'.
 dpkg-genbuildinfo --build=binary -O../ironic-python-agent_9.14.0-5_i386.buildinfo
 dpkg-genchanges --build=binary -O../ironic-python-agent_9.14.0-5_i386.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
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/53651/tmp/hooks/B01_cleanup starting
I: user script /srv/workspace/pbuilder/53651/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/53651 and its subdirectories
I: Current time: Sat Feb  7 11:13:49 +14 2026
I: pbuilder-time-stamp: 1770412429