==> Building on s ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list created directory packages/cloud-init ./ PKGBUILD 4,162 100% 0.00kB/s 0:00:00 4,162 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=2/4) cloud-init-22.1-lib_dir.patch 342 100% 333.98kB/s 0:00:00 342 100% 333.98kB/s 0:00:00 (xfr#2, to-chk=1/4) cloud-init-22.3.3-1.log 379 100% 370.12kB/s 0:00:00 379 100% 370.12kB/s 0:00:00 (xfr#3, to-chk=0/4) sent 2,514 bytes received 118 bytes 1,754.67 bytes/sec total size is 4,692 speedup is 1.78 ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l felix17 on remote host... [?25l:: Synchronizing package databases... core downloading... extra downloading... community downloading... :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix17]...done ==> Making package: cloud-init 22.3.3-1 (Sat Sep 24 09:13:52 2022) ==> Retrieving sources...  -> Downloading cloud-init-22.3.3.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 1391k 0 1391k 0 0 2117k 0 --:--:-- --:--:-- --:--:-- 2117k  -> Found cloud-init-22.1-lib_dir.patch ==> Validating source files with sha512sums... cloud-init-22.3.3.tar.gz ... Passed cloud-init-22.1-lib_dir.patch ... Passed ==> Validating source files with b2sums... cloud-init-22.3.3.tar.gz ... Passed cloud-init-22.1-lib_dir.patch ... Passed ==> Making package: cloud-init 22.3.3-1 (Sat Sep 24 09:14:06 2022) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (46) New Version Net Change Download Size core/argon2 20190702-4 0.08 MiB core/cryptsetup 2.5.0-1 2.30 MiB core/dbus 1.14.0-1 0.77 MiB core/device-mapper 2.03.16-2 0.75 MiB core/hwdata 0.362-2 8.51 MiB core/iproute2 5.19.0-1 2.61 MiB core/iptables 1:1.8.8-2 1.75 MiB core/json-c 0.16-1 0.16 MiB core/kbd 2.5.1-1 2.88 MiB core/kmod 30-1 0.24 MiB core/libbpf 0.8.1-1 0.68 MiB core/libmnl 1.0.5-1 0.03 MiB core/libnetfilter_conntrack 1.0.9-1 0.14 MiB core/libnfnetlink 1.0.2-1 0.04 MiB core/libnftnl 1.2.3-1 0.22 MiB core/libnl 3.7.0-1 1.69 MiB core/libnsl 2.0.0-2 0.06 MiB core/libpcap 1.10.1-2 0.55 MiB extra/libyaml 0.2.5-1 0.14 MiB core/popt 1.18-3 0.53 MiB core/python 3.10.7-1 80.86 MiB extra/python-attrs 22.1.0-1 0.43 MiB extra/python-cffi 1.15.1-1 1.00 MiB extra/python-chardet 5.0.0-1 2.44 MiB extra/python-cryptography 38.0.1-1 3.55 MiB extra/python-idna 3.4-1 0.67 MiB community/python-jsonpointer 2.3-1 0.03 MiB extra/python-markupsafe 2.1.1-1 0.06 MiB extra/python-ply 3.11-10 0.31 MiB extra/python-pycparser 2.21-3 1.39 MiB community/python-pyrsistent 0.19.0-1 0.48 MiB extra/python-six 1.16.0-6 0.09 MiB extra/python-urllib3 1.26.7-5 0.69 MiB core/run-parts 5.5-1 0.04 MiB extra/dhclient 4.4.3-3 2.38 MiB 1.12 MiB community/netplan 0.105-1 0.57 MiB 0.18 MiB community/python-configobj 5.0.6.r110.g3e2f4cc-3 0.33 MiB community/python-jinja 1:3.1.2-2 1.28 MiB community/python-jsonpatch 1.32-3 0.06 MiB community/python-jsonschema 4.16.0-1 0.94 MiB community/python-netifaces 0.11.0-3 0.03 MiB community/python-oauthlib 3.2.0-1 1.29 MiB community/python-pyserial 3.5-4 0.51 MiB extra/python-requests 2.28.1-1 0.45 MiB community/python-yaml 6.0-1 0.68 MiB core/systemd 251.4-1 25.20 MiB Total Download Size: 1.30 MiB Total Installed Size: 149.87 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... dhclient-4.4.3-3-riscv64 downloading... netplan-0.105-1-riscv64 downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing libmnl... installing libnftnl... installing libnl... installing dbus... installing libpcap... installing libnfnetlink... installing libnetfilter_conntrack... installing iptables... installing libbpf... installing iproute2... Optional dependencies for iproute2 db: userspace arp daemon [installed] libcap: tipc [installed] linux-atm: ATM support installing run-parts... installing dhclient... installing libyaml... installing libnsl... installing python... Optional dependencies for python python-setuptools python-pip sqlite [installed] mpdecimal: for decimal xz: for lzma [installed] tk: for tkinter installing python-yaml... installing python-netifaces... installing device-mapper... installing popt... installing json-c... installing argon2... installing cryptsetup... installing kbd... installing kmod... installing hwdata... installing systemd... warning: directory permissions differ on /var/log/journal/ filesystem: 755 package: 2755 Creating group 'sys' with GID 3. Creating group 'mem' with GID 8. Creating group 'ftp' with GID 11. Creating group 'mail' with GID 12. Creating group 'log' with GID 19. Creating group 'smmsp' with GID 25. Creating group 'proc' with GID 26. Creating group 'games' with GID 50. Creating group 'lock' with GID 54. Creating group 'network' with GID 90. Creating group 'floppy' with GID 94. Creating group 'scanner' with GID 96. Creating group 'power' with GID 98. Creating group 'nobody' with GID 65534. Creating group 'adm' with GID 999. Creating group 'wheel' with GID 998. Creating group 'utmp' with GID 997. Creating group 'audio' with GID 996. Creating group 'disk' with GID 995. Creating group 'input' with GID 994. Creating group 'kmem' with GID 993. Creating group 'kvm' with GID 992. Creating group 'lp' with GID 991. Creating group 'optical' with GID 990. Creating group 'render' with GID 989. Creating group 'sgx' with GID 988. Creating group 'storage' with GID 987. Creating group 'tty' with GID 5. Creating group 'uucp' with GID 986. Creating group 'video' with GID 985. Creating group 'users' with GID 984. Creating group 'systemd-journal' with GID 983. Creating group 'rfkill' with GID 982. Creating group 'bin' with GID 1. Creating user 'bin' (n/a) with UID 1 and GID 1. Creating group 'daemon' with GID 2. Creating user 'daemon' (n/a) with UID 2 and GID 2. Creating user 'mail' (n/a) with UID 8 and GID 12. Creating user 'ftp' (n/a) with UID 14 and GID 11. Creating group 'http' with GID 33. Creating user 'http' (n/a) with UID 33 and GID 33. Creating user 'nobody' (Nobody) with UID 65534 and GID 65534. Creating group 'dbus' with GID 81. Creating user 'dbus' (System Message Bus) with UID 81 and GID 81. Creating group 'systemd-coredump' with GID 981. Creating user 'systemd-coredump' (systemd Core Dumper) with UID 981 and GID 981. Creating group 'systemd-network' with GID 980. Creating user 'systemd-network' (systemd Network Management) with UID 980 and GID 980. Creating group 'systemd-oom' with GID 979. Creating user 'systemd-oom' (systemd Userspace OOM Killer) with UID 979 and GID 979. Creating group 'systemd-journal-remote' with GID 978. Creating user 'systemd-journal-remote' (systemd Journal Remote) with UID 978 and GID 978. Creating group 'systemd-resolve' with GID 977. Creating user 'systemd-resolve' (systemd Resolver) with UID 977 and GID 977. Creating group 'systemd-timesync' with GID 976. Creating user 'systemd-timesync' (systemd Time Synchronization) with UID 976 and GID 976. Creating group 'uuidd' with GID 68. Creating user 'uuidd' (n/a) with UID 68 and GID 68. Created symlink /etc/systemd/system/getty.target.wants/getty@tty1.service → /usr/lib/systemd/system/getty@.service. Created symlink /etc/systemd/system/multi-user.target.wants/remote-fs.target → /usr/lib/systemd/system/remote-fs.target. Optional dependencies for systemd libmicrohttpd: remote journald capabilities quota-tools: kernel-level quota management systemd-sysvcompat: symlink package to provide sysvinit binaries polkit: allow administration as unprivileged user curl: machinectl pull-tar and pull-raw [installed] libfido2: unlocking LUKS2 volumes with FIDO2 token installing netplan... installing python-six... installing python-configobj... installing python-markupsafe... installing python-jinja... Optional dependencies for python-jinja python-babel: for i18n support installing python-jsonpointer... installing python-jsonpatch... installing python-attrs... installing python-pyrsistent... installing python-jsonschema... installing python-ply... installing python-pycparser... installing python-cffi... installing python-cryptography... installing python-oauthlib... installing python-urllib3... Optional dependencies for python-urllib3 python-pysocks: SOCKS support python-brotli: Brotli support python-pyopenssl: security support python-idna: security support [pending] installing python-chardet... installing python-idna... installing python-requests... Optional dependencies for python-requests python-pysocks: SOCKS proxy support installing python-pyserial... :: Running post-transaction hooks... (1/9) Creating system user accounts... (2/9) Updating journal message catalog... (3/9) Reloading system manager configuration... Skipped: Current root is not booted. (4/9) Updating udev hardware database... (5/9) Applying kernel sysctl settings... Skipped: Current root is not booted. (6/9) Creating temporary files... Failed to adjust quota for subvolume "/var/lib/portables": Function not implemented Failed to adjust quota for subvolume "/var/lib/machines": Function not implemented error: command failed to execute correctly (7/9) Reloading device manager configuration... Skipped: Device manager is not running. (8/9) Arming ConditionNeedsUpdate... (9/9) Reloading system bus configuration... Skipped: Current root is not booted. [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (31) New Version Net Change Download Size community/cython 0.29.32-2 7.52 MiB community/python-apipkg 3.0.1-1 0.04 MiB extra/python-appdirs 1.4.4-7 0.07 MiB community/python-autocommand 2.2.1-1 0.07 MiB community/python-biscuits 0.3.0-1 0.07 MiB community/python-inflect 6.0.0-1 0.28 MiB community/python-iniconfig 1.1.1-5 0.02 MiB community/python-jaraco.context 4.1.2-1 0.02 MiB community/python-jaraco.functools 3.5.1-1 0.05 MiB community/python-jaraco.text 3.9.1-1 0.07 MiB community/python-more-itertools 8.13.0-2 0.48 MiB extra/python-nspektr 0.4.0-2 0.02 MiB extra/python-ordered-set 4.1.0-1 0.06 MiB extra/python-packaging 21.3-1 0.26 MiB extra/python-pep517 0.13.0-1 0.13 MiB community/python-pluggy 1.0.0-1 0.10 MiB community/python-py 1.11.0-1 0.71 MiB community/python-pydantic 1.10.2-1 5.79 MiB extra/python-pyparsing 3.0.9-1 0.96 MiB extra/python-tomli 2.0.1-1 0.08 MiB extra/python-trove-classifiers 2022.8.31-1 0.11 MiB community/python-typing_extensions 4.3.0-1 0.21 MiB extra/python-validate-pyproject 0.10.1-1 0.41 MiB community/python-build 0.8.0-2 1.04 MiB community/python-httpretty 1.1.4-3 0.21 MiB 0.05 MiB community/python-installer 0.5.1-1 1.13 MiB community/python-pytest 7.1.2-1 2.62 MiB community/python-pytest-mock 3.8.2-1 0.06 MiB community/python-responses 0.21.0-1 0.45 MiB extra/python-setuptools 1:62.3.4-1 3.20 MiB community/python-wheel 0.37.1-1 0.16 MiB Total Download Size: 0.05 MiB Total Installed Size: 26.41 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-httpretty-1.1.4-3-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-tomli... installing python-pep517... installing python-pyparsing... Optional dependencies for python-pyparsing python-railroad-diagrams: for generating Railroad Diagrams python-jinja: for generating Railroad Diagrams [installed] installing python-packaging... installing python-build... Optional dependencies for python-build python-virtualenv: Use virtualenv for build isolation installing python-installer... installing python-appdirs... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing cython... installing python-typing_extensions... installing python-pydantic... Optional dependencies for python-pydantic python-dotenv: for .env file support python-email-validator: for email validation installing python-inflect... installing python-jaraco.text... installing python-nspektr... installing python-ordered-set... installing python-trove-classifiers... installing python-validate-pyproject... installing python-setuptools... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures installing python-httpretty... installing python-iniconfig... installing python-pluggy... installing python-apipkg... installing python-py... installing python-pytest... installing python-pytest-mock... installing python-biscuits... installing python-responses... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [?25h==> Retrieving sources...  -> Found cloud-init-22.3.3.tar.gz  -> Found cloud-init-22.1-lib_dir.patch ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Extracting cloud-init-22.3.3.tar.gz with bsdtar ==> Starting prepare()... patching file setup.py Hunk #1 succeeded at 178 (offset 1 line). ==> Starting build()... running egg_info creating cloud_init.egg-info writing cloud_init.egg-info/PKG-INFO writing dependency_links to cloud_init.egg-info/dependency_links.txt writing entry points to cloud_init.egg-info/entry_points.txt writing requirements to cloud_init.egg-info/requires.txt writing top-level names to cloud_init.egg-info/top_level.txt writing manifest file 'cloud_init.egg-info/SOURCES.txt' reading manifest file 'cloud_init.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'build' no previously-included directories found matching 'dist' no previously-included directories found matching '.tox' no previously-included directories found matching '.git' no previously-included directories found matching '.bzr' warning: no previously-included files found matching '.gitignore' warning: no previously-included files found matching '.bzrignore' adding license file 'LICENSE' adding license file 'LICENSE-Apache2.0' adding license file 'LICENSE-GPLv3' writing manifest file 'cloud_init.egg-info/SOURCES.txt' running bdist_wheel running build running build_py creating build creating build/lib creating build/lib/cloudinit copying cloudinit/__init__.py -> build/lib/cloudinit copying cloudinit/apport.py -> build/lib/cloudinit copying cloudinit/atomic_helper.py -> build/lib/cloudinit copying cloudinit/cloud.py -> build/lib/cloudinit copying cloudinit/dhclient_hook.py -> build/lib/cloudinit copying cloudinit/dmi.py -> build/lib/cloudinit copying cloudinit/event.py -> build/lib/cloudinit copying cloudinit/features.py -> build/lib/cloudinit copying cloudinit/gpg.py -> build/lib/cloudinit copying cloudinit/helpers.py -> build/lib/cloudinit copying cloudinit/importer.py -> build/lib/cloudinit copying cloudinit/log.py -> build/lib/cloudinit copying cloudinit/netinfo.py -> build/lib/cloudinit copying cloudinit/patcher.py -> build/lib/cloudinit copying cloudinit/persistence.py -> build/lib/cloudinit copying cloudinit/registry.py -> build/lib/cloudinit copying cloudinit/safeyaml.py -> build/lib/cloudinit copying cloudinit/settings.py -> build/lib/cloudinit copying cloudinit/signal_handler.py -> build/lib/cloudinit copying cloudinit/simpletable.py -> build/lib/cloudinit copying cloudinit/ssh_util.py -> build/lib/cloudinit copying cloudinit/stages.py -> build/lib/cloudinit copying cloudinit/subp.py -> build/lib/cloudinit copying cloudinit/temp_utils.py -> build/lib/cloudinit copying cloudinit/templater.py -> build/lib/cloudinit copying cloudinit/type_utils.py -> build/lib/cloudinit copying cloudinit/url_helper.py -> build/lib/cloudinit copying cloudinit/user_data.py -> build/lib/cloudinit copying cloudinit/util.py -> build/lib/cloudinit copying cloudinit/version.py -> build/lib/cloudinit copying cloudinit/warnings.py -> build/lib/cloudinit creating build/lib/cloudinit/analyze copying cloudinit/analyze/__init__.py -> build/lib/cloudinit/analyze copying cloudinit/analyze/__main__.py -> build/lib/cloudinit/analyze copying cloudinit/analyze/dump.py -> build/lib/cloudinit/analyze copying cloudinit/analyze/show.py -> build/lib/cloudinit/analyze creating build/lib/cloudinit/cmd copying cloudinit/cmd/__init__.py -> build/lib/cloudinit/cmd copying cloudinit/cmd/clean.py -> build/lib/cloudinit/cmd copying cloudinit/cmd/cloud_id.py -> build/lib/cloudinit/cmd copying cloudinit/cmd/main.py -> build/lib/cloudinit/cmd copying cloudinit/cmd/query.py -> build/lib/cloudinit/cmd copying cloudinit/cmd/status.py -> build/lib/cloudinit/cmd creating build/lib/cloudinit/config copying cloudinit/config/__init__.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ansible.py -> build/lib/cloudinit/config copying cloudinit/config/cc_apk_configure.py -> build/lib/cloudinit/config copying cloudinit/config/cc_apt_configure.py -> build/lib/cloudinit/config copying cloudinit/config/cc_apt_pipelining.py -> build/lib/cloudinit/config copying cloudinit/config/cc_bootcmd.py -> build/lib/cloudinit/config copying cloudinit/config/cc_byobu.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ca_certs.py -> build/lib/cloudinit/config copying cloudinit/config/cc_chef.py -> build/lib/cloudinit/config copying cloudinit/config/cc_disable_ec2_metadata.py -> build/lib/cloudinit/config copying cloudinit/config/cc_disk_setup.py -> build/lib/cloudinit/config copying cloudinit/config/cc_fan.py -> build/lib/cloudinit/config copying cloudinit/config/cc_final_message.py -> build/lib/cloudinit/config copying cloudinit/config/cc_growpart.py -> build/lib/cloudinit/config copying cloudinit/config/cc_grub_dpkg.py -> build/lib/cloudinit/config copying cloudinit/config/cc_install_hotplug.py -> build/lib/cloudinit/config copying cloudinit/config/cc_keyboard.py -> build/lib/cloudinit/config copying cloudinit/config/cc_keys_to_console.py -> build/lib/cloudinit/config copying cloudinit/config/cc_landscape.py -> build/lib/cloudinit/config copying cloudinit/config/cc_locale.py -> build/lib/cloudinit/config copying cloudinit/config/cc_lxd.py -> build/lib/cloudinit/config copying cloudinit/config/cc_mcollective.py -> build/lib/cloudinit/config copying cloudinit/config/cc_migrator.py -> build/lib/cloudinit/config copying cloudinit/config/cc_mounts.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ntp.py -> build/lib/cloudinit/config copying cloudinit/config/cc_package_update_upgrade_install.py -> build/lib/cloudinit/config copying cloudinit/config/cc_phone_home.py -> build/lib/cloudinit/config copying cloudinit/config/cc_power_state_change.py -> build/lib/cloudinit/config copying cloudinit/config/cc_puppet.py -> build/lib/cloudinit/config copying cloudinit/config/cc_refresh_rmc_and_interface.py -> build/lib/cloudinit/config copying cloudinit/config/cc_reset_rmc.py -> build/lib/cloudinit/config copying cloudinit/config/cc_resizefs.py -> build/lib/cloudinit/config copying cloudinit/config/cc_resolv_conf.py -> build/lib/cloudinit/config copying cloudinit/config/cc_rh_subscription.py -> build/lib/cloudinit/config copying cloudinit/config/cc_rightscale_userdata.py -> build/lib/cloudinit/config copying cloudinit/config/cc_rsyslog.py -> build/lib/cloudinit/config copying cloudinit/config/cc_runcmd.py -> build/lib/cloudinit/config copying cloudinit/config/cc_salt_minion.py -> build/lib/cloudinit/config copying cloudinit/config/cc_scripts_per_boot.py -> build/lib/cloudinit/config copying cloudinit/config/cc_scripts_per_instance.py -> build/lib/cloudinit/config copying cloudinit/config/cc_scripts_per_once.py -> build/lib/cloudinit/config copying cloudinit/config/cc_scripts_user.py -> build/lib/cloudinit/config copying cloudinit/config/cc_scripts_vendor.py -> build/lib/cloudinit/config copying cloudinit/config/cc_seed_random.py -> build/lib/cloudinit/config copying cloudinit/config/cc_set_hostname.py -> build/lib/cloudinit/config copying cloudinit/config/cc_set_passwords.py -> build/lib/cloudinit/config copying cloudinit/config/cc_snap.py -> build/lib/cloudinit/config copying cloudinit/config/cc_spacewalk.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ssh.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ssh_authkey_fingerprints.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ssh_import_id.py -> build/lib/cloudinit/config copying cloudinit/config/cc_timezone.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ubuntu_advantage.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ubuntu_autoinstall.py -> build/lib/cloudinit/config copying cloudinit/config/cc_ubuntu_drivers.py -> build/lib/cloudinit/config copying cloudinit/config/cc_update_etc_hosts.py -> build/lib/cloudinit/config copying cloudinit/config/cc_update_hostname.py -> build/lib/cloudinit/config copying cloudinit/config/cc_users_groups.py -> build/lib/cloudinit/config copying cloudinit/config/cc_wireguard.py -> build/lib/cloudinit/config copying cloudinit/config/cc_write_files.py -> build/lib/cloudinit/config copying cloudinit/config/cc_write_files_deferred.py -> build/lib/cloudinit/config copying cloudinit/config/cc_yum_add_repo.py -> build/lib/cloudinit/config copying cloudinit/config/cc_zypper_add_repo.py -> build/lib/cloudinit/config copying cloudinit/config/modules.py -> build/lib/cloudinit/config copying cloudinit/config/schema.py -> build/lib/cloudinit/config creating build/lib/cloudinit/distros copying cloudinit/distros/__init__.py -> build/lib/cloudinit/distros copying cloudinit/distros/almalinux.py -> build/lib/cloudinit/distros copying cloudinit/distros/alpine.py -> build/lib/cloudinit/distros copying cloudinit/distros/amazon.py -> build/lib/cloudinit/distros copying cloudinit/distros/arch.py -> build/lib/cloudinit/distros copying cloudinit/distros/bsd.py -> build/lib/cloudinit/distros copying cloudinit/distros/bsd_utils.py -> build/lib/cloudinit/distros copying cloudinit/distros/centos.py -> build/lib/cloudinit/distros copying cloudinit/distros/cloudlinux.py -> build/lib/cloudinit/distros copying cloudinit/distros/debian.py -> build/lib/cloudinit/distros copying cloudinit/distros/dragonflybsd.py -> build/lib/cloudinit/distros copying cloudinit/distros/eurolinux.py -> build/lib/cloudinit/distros copying cloudinit/distros/fedora.py -> build/lib/cloudinit/distros copying cloudinit/distros/freebsd.py -> build/lib/cloudinit/distros copying cloudinit/distros/gentoo.py -> build/lib/cloudinit/distros copying cloudinit/distros/miraclelinux.py -> build/lib/cloudinit/distros copying cloudinit/distros/net_util.py -> build/lib/cloudinit/distros copying cloudinit/distros/netbsd.py -> build/lib/cloudinit/distros copying cloudinit/distros/networking.py -> build/lib/cloudinit/distros copying cloudinit/distros/openEuler.py -> build/lib/cloudinit/distros copying cloudinit/distros/openbsd.py -> build/lib/cloudinit/distros copying cloudinit/distros/openmandriva.py -> build/lib/cloudinit/distros copying cloudinit/distros/opensuse.py -> build/lib/cloudinit/distros copying cloudinit/distros/photon.py -> build/lib/cloudinit/distros copying cloudinit/distros/rhel.py -> build/lib/cloudinit/distros copying cloudinit/distros/rhel_util.py -> build/lib/cloudinit/distros copying cloudinit/distros/rocky.py -> build/lib/cloudinit/distros copying cloudinit/distros/sles.py -> build/lib/cloudinit/distros copying cloudinit/distros/ubuntu.py -> build/lib/cloudinit/distros copying cloudinit/distros/ug_util.py -> build/lib/cloudinit/distros copying cloudinit/distros/virtuozzo.py -> build/lib/cloudinit/distros creating build/lib/cloudinit/filters copying cloudinit/filters/__init__.py -> build/lib/cloudinit/filters copying cloudinit/filters/launch_index.py -> build/lib/cloudinit/filters creating build/lib/cloudinit/handlers copying cloudinit/handlers/__init__.py -> build/lib/cloudinit/handlers copying cloudinit/handlers/boot_hook.py -> build/lib/cloudinit/handlers copying cloudinit/handlers/cloud_config.py -> build/lib/cloudinit/handlers copying cloudinit/handlers/jinja_template.py -> build/lib/cloudinit/handlers copying cloudinit/handlers/shell_script.py -> build/lib/cloudinit/handlers copying cloudinit/handlers/shell_script_by_frequency.py -> build/lib/cloudinit/handlers creating build/lib/cloudinit/mergers copying cloudinit/mergers/__init__.py -> build/lib/cloudinit/mergers copying cloudinit/mergers/m_dict.py -> build/lib/cloudinit/mergers copying cloudinit/mergers/m_list.py -> build/lib/cloudinit/mergers copying cloudinit/mergers/m_str.py -> build/lib/cloudinit/mergers creating build/lib/cloudinit/net copying cloudinit/net/__init__.py -> build/lib/cloudinit/net copying cloudinit/net/activators.py -> build/lib/cloudinit/net copying cloudinit/net/bsd.py -> build/lib/cloudinit/net copying cloudinit/net/cmdline.py -> build/lib/cloudinit/net copying cloudinit/net/dhcp.py -> build/lib/cloudinit/net copying cloudinit/net/eni.py -> build/lib/cloudinit/net copying cloudinit/net/ephemeral.py -> build/lib/cloudinit/net copying cloudinit/net/freebsd.py -> build/lib/cloudinit/net copying cloudinit/net/netbsd.py -> build/lib/cloudinit/net copying cloudinit/net/netplan.py -> build/lib/cloudinit/net copying cloudinit/net/network_manager.py -> build/lib/cloudinit/net copying cloudinit/net/network_state.py -> build/lib/cloudinit/net copying cloudinit/net/networkd.py -> build/lib/cloudinit/net copying cloudinit/net/openbsd.py -> build/lib/cloudinit/net copying cloudinit/net/renderer.py -> build/lib/cloudinit/net copying cloudinit/net/renderers.py -> build/lib/cloudinit/net copying cloudinit/net/sysconfig.py -> build/lib/cloudinit/net copying cloudinit/net/udev.py -> build/lib/cloudinit/net creating build/lib/cloudinit/reporting copying cloudinit/reporting/__init__.py -> build/lib/cloudinit/reporting copying cloudinit/reporting/events.py -> build/lib/cloudinit/reporting copying cloudinit/reporting/handlers.py -> build/lib/cloudinit/reporting creating build/lib/cloudinit/sources copying cloudinit/sources/DataSourceAliYun.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceAltCloud.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceAzure.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceBigstep.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceCloudSigma.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceCloudStack.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceConfigDrive.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceDigitalOcean.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceEc2.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceExoscale.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceGCE.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceHetzner.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceIBMCloud.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceLXD.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceMAAS.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceNoCloud.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceNone.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceOVF.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceOpenNebula.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceOpenStack.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceOracle.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceRbxCloud.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceScaleway.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceSmartOS.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceUpCloud.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceVMware.py -> build/lib/cloudinit/sources copying cloudinit/sources/DataSourceVultr.py -> build/lib/cloudinit/sources copying cloudinit/sources/__init__.py -> build/lib/cloudinit/sources creating build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/__init__.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/hotplug_hook.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/logs.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/make_mime.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/net_convert.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/parser.py -> build/lib/cloudinit/cmd/devel copying cloudinit/cmd/devel/render.py -> build/lib/cloudinit/cmd/devel creating build/lib/cloudinit/config/schemas copying cloudinit/config/schemas/__init__.py -> build/lib/cloudinit/config/schemas creating build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/__init__.py -> build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/hostname.py -> build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/hosts.py -> build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/networkmanager_conf.py -> build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/resolv_conf.py -> build/lib/cloudinit/distros/parsers copying cloudinit/distros/parsers/sys_conf.py -> build/lib/cloudinit/distros/parsers creating build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/__init__.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/azure.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/cloudsigma.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/digitalocean.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/ec2.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/hetzner.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/netlink.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/openstack.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/upcloud.py -> build/lib/cloudinit/sources/helpers copying cloudinit/sources/helpers/vultr.py -> build/lib/cloudinit/sources/helpers creating build/lib/cloudinit/sources/helpers/vmware copying cloudinit/sources/helpers/vmware/__init__.py -> build/lib/cloudinit/sources/helpers/vmware creating build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/__init__.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/boot_proto.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_custom_script.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_file.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_namespace.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_nic.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_passwd.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/config_source.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/guestcust_error.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/guestcust_event.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/guestcust_state.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/guestcust_util.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/ipv4_mode.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/nic.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/sources/helpers/vmware/imc/nic_base.py -> build/lib/cloudinit/sources/helpers/vmware/imc copying cloudinit/config/schemas/schema-cloud-config-v1.json -> build/lib/cloudinit/config/schemas copying cloudinit/config/schemas/versions.schema.cloud-config.json -> build/lib/cloudinit/config/schemas running build_scripts creating build/scripts-3.10 copying tools/cloud-init-per -> build/scripts-3.10 installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64 creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/apport.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/atomic_helper.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/cloud.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/dhclient_hook.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/dmi.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/event.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/features.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/gpg.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/helpers.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/importer.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/log.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/netinfo.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/patcher.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/persistence.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/registry.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/safeyaml.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/settings.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/signal_handler.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/simpletable.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/ssh_util.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/stages.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/subp.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/temp_utils.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/templater.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/type_utils.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/url_helper.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/user_data.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/util.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/version.py -> build/bdist.linux-riscv64/wheel/cloudinit copying build/lib/cloudinit/warnings.py -> build/bdist.linux-riscv64/wheel/cloudinit creating build/bdist.linux-riscv64/wheel/cloudinit/analyze copying build/lib/cloudinit/analyze/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/analyze copying build/lib/cloudinit/analyze/__main__.py -> build/bdist.linux-riscv64/wheel/cloudinit/analyze copying build/lib/cloudinit/analyze/dump.py -> build/bdist.linux-riscv64/wheel/cloudinit/analyze copying build/lib/cloudinit/analyze/show.py -> build/bdist.linux-riscv64/wheel/cloudinit/analyze creating build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/clean.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/cloud_id.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/main.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/query.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd copying build/lib/cloudinit/cmd/status.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd creating build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/hotplug_hook.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/logs.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/make_mime.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/net_convert.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/parser.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel copying build/lib/cloudinit/cmd/devel/render.py -> build/bdist.linux-riscv64/wheel/cloudinit/cmd/devel creating build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ansible.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_apk_configure.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_apt_configure.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_apt_pipelining.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_bootcmd.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_byobu.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ca_certs.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_chef.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_disable_ec2_metadata.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_disk_setup.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_fan.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_final_message.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_growpart.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_grub_dpkg.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_install_hotplug.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_keyboard.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_keys_to_console.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_landscape.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_locale.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_lxd.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_mcollective.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_migrator.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_mounts.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ntp.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_package_update_upgrade_install.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_phone_home.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_power_state_change.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_puppet.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_refresh_rmc_and_interface.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_reset_rmc.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_resizefs.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_resolv_conf.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_rh_subscription.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_rightscale_userdata.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_rsyslog.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_runcmd.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_salt_minion.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_scripts_per_boot.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_scripts_per_instance.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_scripts_per_once.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_scripts_user.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_scripts_vendor.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_seed_random.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_set_hostname.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_set_passwords.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_snap.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_spacewalk.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ssh.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ssh_authkey_fingerprints.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ssh_import_id.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_timezone.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ubuntu_advantage.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ubuntu_autoinstall.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_ubuntu_drivers.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_update_etc_hosts.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_update_hostname.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_users_groups.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_wireguard.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_write_files.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_write_files_deferred.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_yum_add_repo.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/cc_zypper_add_repo.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/modules.py -> build/bdist.linux-riscv64/wheel/cloudinit/config copying build/lib/cloudinit/config/schema.py -> build/bdist.linux-riscv64/wheel/cloudinit/config creating build/bdist.linux-riscv64/wheel/cloudinit/config/schemas copying build/lib/cloudinit/config/schemas/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/config/schemas copying build/lib/cloudinit/config/schemas/schema-cloud-config-v1.json -> build/bdist.linux-riscv64/wheel/cloudinit/config/schemas copying build/lib/cloudinit/config/schemas/versions.schema.cloud-config.json -> build/bdist.linux-riscv64/wheel/cloudinit/config/schemas creating build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/almalinux.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/alpine.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/amazon.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/arch.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/bsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/bsd_utils.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/centos.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/cloudlinux.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/debian.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/dragonflybsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/eurolinux.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/fedora.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/freebsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/gentoo.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/miraclelinux.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/net_util.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/netbsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/networking.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/openEuler.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/openbsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/openmandriva.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/opensuse.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/photon.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/rhel.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/rhel_util.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/rocky.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/sles.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/ubuntu.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/ug_util.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros copying build/lib/cloudinit/distros/virtuozzo.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros creating build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/hostname.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/hosts.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/networkmanager_conf.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/resolv_conf.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers copying build/lib/cloudinit/distros/parsers/sys_conf.py -> build/bdist.linux-riscv64/wheel/cloudinit/distros/parsers creating build/bdist.linux-riscv64/wheel/cloudinit/filters copying build/lib/cloudinit/filters/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/filters copying build/lib/cloudinit/filters/launch_index.py -> build/bdist.linux-riscv64/wheel/cloudinit/filters creating build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/boot_hook.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/cloud_config.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/jinja_template.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/shell_script.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers copying build/lib/cloudinit/handlers/shell_script_by_frequency.py -> build/bdist.linux-riscv64/wheel/cloudinit/handlers creating build/bdist.linux-riscv64/wheel/cloudinit/mergers copying build/lib/cloudinit/mergers/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/mergers copying build/lib/cloudinit/mergers/m_dict.py -> build/bdist.linux-riscv64/wheel/cloudinit/mergers copying build/lib/cloudinit/mergers/m_list.py -> build/bdist.linux-riscv64/wheel/cloudinit/mergers copying build/lib/cloudinit/mergers/m_str.py -> build/bdist.linux-riscv64/wheel/cloudinit/mergers creating build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/activators.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/bsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/cmdline.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/dhcp.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/eni.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/ephemeral.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/freebsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/netbsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/netplan.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/network_manager.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/network_state.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/networkd.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/openbsd.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/renderer.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/renderers.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/sysconfig.py -> build/bdist.linux-riscv64/wheel/cloudinit/net copying build/lib/cloudinit/net/udev.py -> build/bdist.linux-riscv64/wheel/cloudinit/net creating build/bdist.linux-riscv64/wheel/cloudinit/reporting copying build/lib/cloudinit/reporting/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/reporting copying build/lib/cloudinit/reporting/events.py -> build/bdist.linux-riscv64/wheel/cloudinit/reporting copying build/lib/cloudinit/reporting/handlers.py -> build/bdist.linux-riscv64/wheel/cloudinit/reporting creating build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceAliYun.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceAltCloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceAzure.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceBigstep.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceCloudSigma.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceCloudStack.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceConfigDrive.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceDigitalOcean.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceEc2.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceExoscale.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceGCE.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceHetzner.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceIBMCloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceLXD.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceMAAS.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceNoCloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceNone.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceOVF.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceOpenNebula.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceOpenStack.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceOracle.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceRbxCloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceScaleway.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceSmartOS.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceUpCloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceVMware.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/DataSourceVultr.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources copying build/lib/cloudinit/sources/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources creating build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/azure.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/cloudsigma.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/digitalocean.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/ec2.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/hetzner.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/netlink.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/openstack.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/upcloud.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers copying build/lib/cloudinit/sources/helpers/vultr.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers creating build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware copying build/lib/cloudinit/sources/helpers/vmware/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware creating build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/__init__.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/boot_proto.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_custom_script.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_file.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_namespace.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_nic.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_passwd.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/config_source.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/guestcust_error.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/guestcust_event.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/guestcust_state.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/guestcust_util.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/ipv4_mode.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/nic.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc copying build/lib/cloudinit/sources/helpers/vmware/imc/nic_base.py -> build/bdist.linux-riscv64/wheel/cloudinit/sources/helpers/vmware/imc running install_data creating build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.data creating build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.data/data creating build/bdist.linux-riscv64/wheel/etc creating build/bdist.linux-riscv64/wheel/etc/cloud copying config/cloud.cfg.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud creating build/bdist.linux-riscv64/wheel/etc/cloud/clean.d copying config/clean.d/README -> build/bdist.linux-riscv64/wheel/etc/cloud/clean.d creating build/bdist.linux-riscv64/wheel/etc/cloud/cloud.cfg.d copying config/cloud.cfg.d/05_logging.cfg -> build/bdist.linux-riscv64/wheel/etc/cloud/cloud.cfg.d copying config/cloud.cfg.d/README -> build/bdist.linux-riscv64/wheel/etc/cloud/cloud.cfg.d creating build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chef_client.rb.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.alpine.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.centos.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.debian.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.fedora.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.opensuse.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.photon.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.rhel.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.sles.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/chrony.conf.ubuntu.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.alpine.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.arch.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.debian.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.freebsd.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.gentoo.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.photon.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.redhat.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/hosts.suse.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.alpine.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.debian.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.fedora.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.opensuse.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.photon.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.rhel.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.sles.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/ntp.conf.ubuntu.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/resolv.conf.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/sources.list.debian.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/sources.list.ubuntu.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/systemd.resolved.conf.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates copying templates/timesyncd.conf.tmpl -> build/bdist.linux-riscv64/wheel/etc/cloud/templates creating build/bdist.linux-riscv64/wheel/usr creating build/bdist.linux-riscv64/wheel/usr/lib creating build/bdist.linux-riscv64/wheel/usr/lib/cloud-init copying tools/ds-identify -> build/bdist.linux-riscv64/wheel/usr/lib/cloud-init copying tools/hook-hotplug -> build/bdist.linux-riscv64/wheel/usr/lib/cloud-init copying tools/uncloud-init -> build/bdist.linux-riscv64/wheel/usr/lib/cloud-init copying tools/write-ssh-key-fingerprints -> build/bdist.linux-riscv64/wheel/usr/lib/cloud-init creating build/bdist.linux-riscv64/wheel/usr/share creating build/bdist.linux-riscv64/wheel/usr/share/bash-completion creating build/bdist.linux-riscv64/wheel/usr/share/bash-completion/completions copying bash_completion/cloud-init -> build/bdist.linux-riscv64/wheel/usr/share/bash-completion/completions creating build/bdist.linux-riscv64/wheel/usr/share/doc creating build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init copying doc/status.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init copying doc/userdata.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init copying doc/var-lib-cloud.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init creating build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-add-apt-repos.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-ansible.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-apt.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-archive-launch-index.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-archive.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-boot-cmds.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-ca-certs.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-chef-oneiric.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-chef.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-datasources.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-disk-setup.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-gluster.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-install-packages.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-launch-index.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-lxd.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-mount-points.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-ntp.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-reporting.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-run-cmds.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-ssh-keys.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-update-apt.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-update-packages.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-user-groups.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-wireguard.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-write-files.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config-yum-repo.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/cloud-config.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/include-once.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/include.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/kernel-cmdline.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/part-handler-v2.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/part-handler.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/plain-ignored.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples copying doc/examples/user-script.txt -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples creating build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples/seed copying doc/examples/seed/README -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples/seed copying doc/examples/seed/meta-data -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples/seed copying doc/examples/seed/user-data -> build/bdist.linux-riscv64/wheel/usr/share/doc/cloud-init/examples/seed creating build/bdist.linux-riscv64/wheel/etc/NetworkManager creating build/bdist.linux-riscv64/wheel/etc/NetworkManager/dispatcher.d copying tools/hook-network-manager -> build/bdist.linux-riscv64/wheel/etc/NetworkManager/dispatcher.d/ creating build/bdist.linux-riscv64/wheel/etc/dhcp creating build/bdist.linux-riscv64/wheel/etc/dhcp/dhclient-exit-hooks.d copying tools/hook-dhclient -> build/bdist.linux-riscv64/wheel/etc/dhcp/dhclient-exit-hooks.d/ creating build/bdist.linux-riscv64/wheel/usr/lib/udev creating build/bdist.linux-riscv64/wheel/usr/lib/udev/rules.d copying udev/66-azure-ephemeral.rules -> build/bdist.linux-riscv64/wheel/usr/lib/udev/rules.d creating build/bdist.linux-riscv64/wheel/etc/systemd creating build/bdist.linux-riscv64/wheel/etc/systemd/system creating build/bdist.linux-riscv64/wheel/etc/systemd/system/sshd-keygen@.service.d copying systemd/disable-sshd-keygen-if-cloud-init-active.conf -> build/bdist.linux-riscv64/wheel/etc/systemd/system/sshd-keygen@.service.d/ creating build/bdist.linux-riscv64/wheel/usr/lib/systemd creating build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-config.service.tmpl -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-final.service.tmpl -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-init-local.service.tmpl -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-init.service.tmpl -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-init-hotplugd.service -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-init-hotplugd.socket -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-config.target -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system copying systemd/cloud-init.target -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system creating build/bdist.linux-riscv64/wheel/usr/lib/systemd/system-generators copying systemd/cloud-init-generator.tmpl -> build/bdist.linux-riscv64/wheel/usr/lib/systemd/system-generators running install_egg_info running egg_info writing cloud_init.egg-info/PKG-INFO writing dependency_links to cloud_init.egg-info/dependency_links.txt writing entry points to cloud_init.egg-info/entry_points.txt writing requirements to cloud_init.egg-info/requires.txt writing top-level names to cloud_init.egg-info/top_level.txt reading manifest file 'cloud_init.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'dist' no previously-included directories found matching '.tox' no previously-included directories found matching '.git' no previously-included directories found matching '.bzr' warning: no previously-included files found matching '.gitignore' warning: no previously-included files found matching '.bzrignore' adding license file 'LICENSE' adding license file 'LICENSE-Apache2.0' adding license file 'LICENSE-GPLv3' writing manifest file 'cloud_init.egg-info/SOURCES.txt' Copying cloud_init.egg-info to build/bdist.linux-riscv64/wheel/cloud_init-22.3.3-py3.10.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.data/scripts copying build/scripts-3.10/cloud-init-per -> build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.data/scripts changing mode of build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.data/scripts/cloud-init-per to 755 adding license file "LICENSE" (matched pattern "LICEN[CS]E*") adding license file "LICENSE-Apache2.0" (matched pattern "LICEN[CS]E*") adding license file "LICENSE-GPLv3" (matched pattern "LICEN[CS]E*") creating build/bdist.linux-riscv64/wheel/cloud_init-22.3.3.dist-info/WHEEL creating '/build/cloud-init/src/cloud-init-22.3.3/dist/tmp97oxa987/cloud_init-22.3.3-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'cloud_init-22.3.3.data/scripts/cloud-init-per' adding 'cloudinit/__init__.py' adding 'cloudinit/apport.py' adding 'cloudinit/atomic_helper.py' adding 'cloudinit/cloud.py' adding 'cloudinit/dhclient_hook.py' adding 'cloudinit/dmi.py' adding 'cloudinit/event.py' adding 'cloudinit/features.py' adding 'cloudinit/gpg.py' adding 'cloudinit/helpers.py' adding 'cloudinit/importer.py' adding 'cloudinit/log.py' adding 'cloudinit/netinfo.py' adding 'cloudinit/patcher.py' adding 'cloudinit/persistence.py' adding 'cloudinit/registry.py' adding 'cloudinit/safeyaml.py' adding 'cloudinit/settings.py' adding 'cloudinit/signal_handler.py' adding 'cloudinit/simpletable.py' adding 'cloudinit/ssh_util.py' adding 'cloudinit/stages.py' adding 'cloudinit/subp.py' adding 'cloudinit/temp_utils.py' adding 'cloudinit/templater.py' adding 'cloudinit/type_utils.py' adding 'cloudinit/url_helper.py' adding 'cloudinit/user_data.py' adding 'cloudinit/util.py' adding 'cloudinit/version.py' adding 'cloudinit/warnings.py' adding 'cloudinit/analyze/__init__.py' adding 'cloudinit/analyze/__main__.py' adding 'cloudinit/analyze/dump.py' adding 'cloudinit/analyze/show.py' adding 'cloudinit/cmd/__init__.py' adding 'cloudinit/cmd/clean.py' adding 'cloudinit/cmd/cloud_id.py' adding 'cloudinit/cmd/main.py' adding 'cloudinit/cmd/query.py' adding 'cloudinit/cmd/status.py' adding 'cloudinit/cmd/devel/__init__.py' adding 'cloudinit/cmd/devel/hotplug_hook.py' adding 'cloudinit/cmd/devel/logs.py' adding 'cloudinit/cmd/devel/make_mime.py' adding 'cloudinit/cmd/devel/net_convert.py' adding 'cloudinit/cmd/devel/parser.py' adding 'cloudinit/cmd/devel/render.py' adding 'cloudinit/config/__init__.py' adding 'cloudinit/config/cc_ansible.py' adding 'cloudinit/config/cc_apk_configure.py' adding 'cloudinit/config/cc_apt_configure.py' adding 'cloudinit/config/cc_apt_pipelining.py' adding 'cloudinit/config/cc_bootcmd.py' adding 'cloudinit/config/cc_byobu.py' adding 'cloudinit/config/cc_ca_certs.py' adding 'cloudinit/config/cc_chef.py' adding 'cloudinit/config/cc_disable_ec2_metadata.py' adding 'cloudinit/config/cc_disk_setup.py' adding 'cloudinit/config/cc_fan.py' adding 'cloudinit/config/cc_final_message.py' adding 'cloudinit/config/cc_growpart.py' adding 'cloudinit/config/cc_grub_dpkg.py' adding 'cloudinit/config/cc_install_hotplug.py' adding 'cloudinit/config/cc_keyboard.py' adding 'cloudinit/config/cc_keys_to_console.py' adding 'cloudinit/config/cc_landscape.py' adding 'cloudinit/config/cc_locale.py' adding 'cloudinit/config/cc_lxd.py' adding 'cloudinit/config/cc_mcollective.py' adding 'cloudinit/config/cc_migrator.py' adding 'cloudinit/config/cc_mounts.py' adding 'cloudinit/config/cc_ntp.py' adding 'cloudinit/config/cc_package_update_upgrade_install.py' adding 'cloudinit/config/cc_phone_home.py' adding 'cloudinit/config/cc_power_state_change.py' adding 'cloudinit/config/cc_puppet.py' adding 'cloudinit/config/cc_refresh_rmc_and_interface.py' adding 'cloudinit/config/cc_reset_rmc.py' adding 'cloudinit/config/cc_resizefs.py' adding 'cloudinit/config/cc_resolv_conf.py' adding 'cloudinit/config/cc_rh_subscription.py' adding 'cloudinit/config/cc_rightscale_userdata.py' adding 'cloudinit/config/cc_rsyslog.py' adding 'cloudinit/config/cc_runcmd.py' adding 'cloudinit/config/cc_salt_minion.py' adding 'cloudinit/config/cc_scripts_per_boot.py' adding 'cloudinit/config/cc_scripts_per_instance.py' adding 'cloudinit/config/cc_scripts_per_once.py' adding 'cloudinit/config/cc_scripts_user.py' adding 'cloudinit/config/cc_scripts_vendor.py' adding 'cloudinit/config/cc_seed_random.py' adding 'cloudinit/config/cc_set_hostname.py' adding 'cloudinit/config/cc_set_passwords.py' adding 'cloudinit/config/cc_snap.py' adding 'cloudinit/config/cc_spacewalk.py' adding 'cloudinit/config/cc_ssh.py' adding 'cloudinit/config/cc_ssh_authkey_fingerprints.py' adding 'cloudinit/config/cc_ssh_import_id.py' adding 'cloudinit/config/cc_timezone.py' adding 'cloudinit/config/cc_ubuntu_advantage.py' adding 'cloudinit/config/cc_ubuntu_autoinstall.py' adding 'cloudinit/config/cc_ubuntu_drivers.py' adding 'cloudinit/config/cc_update_etc_hosts.py' adding 'cloudinit/config/cc_update_hostname.py' adding 'cloudinit/config/cc_users_groups.py' adding 'cloudinit/config/cc_wireguard.py' adding 'cloudinit/config/cc_write_files.py' adding 'cloudinit/config/cc_write_files_deferred.py' adding 'cloudinit/config/cc_yum_add_repo.py' adding 'cloudinit/config/cc_zypper_add_repo.py' adding 'cloudinit/config/modules.py' adding 'cloudinit/config/schema.py' adding 'cloudinit/config/schemas/__init__.py' adding 'cloudinit/config/schemas/schema-cloud-config-v1.json' adding 'cloudinit/config/schemas/versions.schema.cloud-config.json' adding 'cloudinit/distros/__init__.py' adding 'cloudinit/distros/almalinux.py' adding 'cloudinit/distros/alpine.py' adding 'cloudinit/distros/amazon.py' adding 'cloudinit/distros/arch.py' adding 'cloudinit/distros/bsd.py' adding 'cloudinit/distros/bsd_utils.py' adding 'cloudinit/distros/centos.py' adding 'cloudinit/distros/cloudlinux.py' adding 'cloudinit/distros/debian.py' adding 'cloudinit/distros/dragonflybsd.py' adding 'cloudinit/distros/eurolinux.py' adding 'cloudinit/distros/fedora.py' adding 'cloudinit/distros/freebsd.py' adding 'cloudinit/distros/gentoo.py' adding 'cloudinit/distros/miraclelinux.py' adding 'cloudinit/distros/net_util.py' adding 'cloudinit/distros/netbsd.py' adding 'cloudinit/distros/networking.py' adding 'cloudinit/distros/openEuler.py' adding 'cloudinit/distros/openbsd.py' adding 'cloudinit/distros/openmandriva.py' adding 'cloudinit/distros/opensuse.py' adding 'cloudinit/distros/photon.py' adding 'cloudinit/distros/rhel.py' adding 'cloudinit/distros/rhel_util.py' adding 'cloudinit/distros/rocky.py' adding 'cloudinit/distros/sles.py' adding 'cloudinit/distros/ubuntu.py' adding 'cloudinit/distros/ug_util.py' adding 'cloudinit/distros/virtuozzo.py' adding 'cloudinit/distros/parsers/__init__.py' adding 'cloudinit/distros/parsers/hostname.py' adding 'cloudinit/distros/parsers/hosts.py' adding 'cloudinit/distros/parsers/networkmanager_conf.py' adding 'cloudinit/distros/parsers/resolv_conf.py' adding 'cloudinit/distros/parsers/sys_conf.py' adding 'cloudinit/filters/__init__.py' adding 'cloudinit/filters/launch_index.py' adding 'cloudinit/handlers/__init__.py' adding 'cloudinit/handlers/boot_hook.py' adding 'cloudinit/handlers/cloud_config.py' adding 'cloudinit/handlers/jinja_template.py' adding 'cloudinit/handlers/shell_script.py' adding 'cloudinit/handlers/shell_script_by_frequency.py' adding 'cloudinit/mergers/__init__.py' adding 'cloudinit/mergers/m_dict.py' adding 'cloudinit/mergers/m_list.py' adding 'cloudinit/mergers/m_str.py' adding 'cloudinit/net/__init__.py' adding 'cloudinit/net/activators.py' adding 'cloudinit/net/bsd.py' adding 'cloudinit/net/cmdline.py' adding 'cloudinit/net/dhcp.py' adding 'cloudinit/net/eni.py' adding 'cloudinit/net/ephemeral.py' adding 'cloudinit/net/freebsd.py' adding 'cloudinit/net/netbsd.py' adding 'cloudinit/net/netplan.py' adding 'cloudinit/net/network_manager.py' adding 'cloudinit/net/network_state.py' adding 'cloudinit/net/networkd.py' adding 'cloudinit/net/openbsd.py' adding 'cloudinit/net/renderer.py' adding 'cloudinit/net/renderers.py' adding 'cloudinit/net/sysconfig.py' adding 'cloudinit/net/udev.py' adding 'cloudinit/reporting/__init__.py' adding 'cloudinit/reporting/events.py' adding 'cloudinit/reporting/handlers.py' adding 'cloudinit/sources/DataSourceAliYun.py' adding 'cloudinit/sources/DataSourceAltCloud.py' adding 'cloudinit/sources/DataSourceAzure.py' adding 'cloudinit/sources/DataSourceBigstep.py' adding 'cloudinit/sources/DataSourceCloudSigma.py' adding 'cloudinit/sources/DataSourceCloudStack.py' adding 'cloudinit/sources/DataSourceConfigDrive.py' adding 'cloudinit/sources/DataSourceDigitalOcean.py' adding 'cloudinit/sources/DataSourceEc2.py' adding 'cloudinit/sources/DataSourceExoscale.py' adding 'cloudinit/sources/DataSourceGCE.py' adding 'cloudinit/sources/DataSourceHetzner.py' adding 'cloudinit/sources/DataSourceIBMCloud.py' adding 'cloudinit/sources/DataSourceLXD.py' adding 'cloudinit/sources/DataSourceMAAS.py' adding 'cloudinit/sources/DataSourceNoCloud.py' adding 'cloudinit/sources/DataSourceNone.py' adding 'cloudinit/sources/DataSourceOVF.py' adding 'cloudinit/sources/DataSourceOpenNebula.py' adding 'cloudinit/sources/DataSourceOpenStack.py' adding 'cloudinit/sources/DataSourceOracle.py' adding 'cloudinit/sources/DataSourceRbxCloud.py' adding 'cloudinit/sources/DataSourceScaleway.py' adding 'cloudinit/sources/DataSourceSmartOS.py' adding 'cloudinit/sources/DataSourceUpCloud.py' adding 'cloudinit/sources/DataSourceVMware.py' adding 'cloudinit/sources/DataSourceVultr.py' adding 'cloudinit/sources/__init__.py' adding 'cloudinit/sources/helpers/__init__.py' adding 'cloudinit/sources/helpers/azure.py' adding 'cloudinit/sources/helpers/cloudsigma.py' adding 'cloudinit/sources/helpers/digitalocean.py' adding 'cloudinit/sources/helpers/ec2.py' adding 'cloudinit/sources/helpers/hetzner.py' adding 'cloudinit/sources/helpers/netlink.py' adding 'cloudinit/sources/helpers/openstack.py' adding 'cloudinit/sources/helpers/upcloud.py' adding 'cloudinit/sources/helpers/vultr.py' adding 'cloudinit/sources/helpers/vmware/__init__.py' adding 'cloudinit/sources/helpers/vmware/imc/__init__.py' adding 'cloudinit/sources/helpers/vmware/imc/boot_proto.py' adding 'cloudinit/sources/helpers/vmware/imc/config.py' adding 'cloudinit/sources/helpers/vmware/imc/config_custom_script.py' adding 'cloudinit/sources/helpers/vmware/imc/config_file.py' adding 'cloudinit/sources/helpers/vmware/imc/config_namespace.py' adding 'cloudinit/sources/helpers/vmware/imc/config_nic.py' adding 'cloudinit/sources/helpers/vmware/imc/config_passwd.py' adding 'cloudinit/sources/helpers/vmware/imc/config_source.py' adding 'cloudinit/sources/helpers/vmware/imc/guestcust_error.py' adding 'cloudinit/sources/helpers/vmware/imc/guestcust_event.py' adding 'cloudinit/sources/helpers/vmware/imc/guestcust_state.py' adding 'cloudinit/sources/helpers/vmware/imc/guestcust_util.py' adding 'cloudinit/sources/helpers/vmware/imc/ipv4_mode.py' adding 'cloudinit/sources/helpers/vmware/imc/nic.py' adding 'cloudinit/sources/helpers/vmware/imc/nic_base.py' adding 'etc/NetworkManager/dispatcher.d/hook-network-manager' adding 'etc/cloud/cloud.cfg.tmpl' adding 'etc/cloud/clean.d/README' adding 'etc/cloud/cloud.cfg.d/05_logging.cfg' adding 'etc/cloud/cloud.cfg.d/README' adding 'etc/cloud/templates/chef_client.rb.tmpl' adding 'etc/cloud/templates/chrony.conf.alpine.tmpl' adding 'etc/cloud/templates/chrony.conf.centos.tmpl' adding 'etc/cloud/templates/chrony.conf.debian.tmpl' adding 'etc/cloud/templates/chrony.conf.fedora.tmpl' adding 'etc/cloud/templates/chrony.conf.opensuse.tmpl' adding 'etc/cloud/templates/chrony.conf.photon.tmpl' adding 'etc/cloud/templates/chrony.conf.rhel.tmpl' adding 'etc/cloud/templates/chrony.conf.sles.tmpl' adding 'etc/cloud/templates/chrony.conf.ubuntu.tmpl' adding 'etc/cloud/templates/hosts.alpine.tmpl' adding 'etc/cloud/templates/hosts.arch.tmpl' adding 'etc/cloud/templates/hosts.debian.tmpl' adding 'etc/cloud/templates/hosts.freebsd.tmpl' adding 'etc/cloud/templates/hosts.gentoo.tmpl' adding 'etc/cloud/templates/hosts.photon.tmpl' adding 'etc/cloud/templates/hosts.redhat.tmpl' adding 'etc/cloud/templates/hosts.suse.tmpl' adding 'etc/cloud/templates/ntp.conf.alpine.tmpl' adding 'etc/cloud/templates/ntp.conf.debian.tmpl' adding 'etc/cloud/templates/ntp.conf.fedora.tmpl' adding 'etc/cloud/templates/ntp.conf.opensuse.tmpl' adding 'etc/cloud/templates/ntp.conf.photon.tmpl' adding 'etc/cloud/templates/ntp.conf.rhel.tmpl' adding 'etc/cloud/templates/ntp.conf.sles.tmpl' adding 'etc/cloud/templates/ntp.conf.ubuntu.tmpl' adding 'etc/cloud/templates/resolv.conf.tmpl' adding 'etc/cloud/templates/sources.list.debian.tmpl' adding 'etc/cloud/templates/sources.list.ubuntu.tmpl' adding 'etc/cloud/templates/systemd.resolved.conf.tmpl' adding 'etc/cloud/templates/timesyncd.conf.tmpl' adding 'etc/dhcp/dhclient-exit-hooks.d/hook-dhclient' adding 'etc/systemd/system/sshd-keygen@.service.d/disable-sshd-keygen-if-cloud-init-active.conf' adding 'usr/lib/cloud-init/ds-identify' adding 'usr/lib/cloud-init/hook-hotplug' adding 'usr/lib/cloud-init/uncloud-init' adding 'usr/lib/cloud-init/write-ssh-key-fingerprints' adding 'usr/lib/systemd/system/cloud-config.service.tmpl' adding 'usr/lib/systemd/system/cloud-config.target' adding 'usr/lib/systemd/system/cloud-final.service.tmpl' adding 'usr/lib/systemd/system/cloud-init-hotplugd.service' adding 'usr/lib/systemd/system/cloud-init-hotplugd.socket' adding 'usr/lib/systemd/system/cloud-init-local.service.tmpl' adding 'usr/lib/systemd/system/cloud-init.service.tmpl' adding 'usr/lib/systemd/system/cloud-init.target' adding 'usr/lib/systemd/system-generators/cloud-init-generator.tmpl' adding 'usr/lib/udev/rules.d/66-azure-ephemeral.rules' adding 'usr/share/bash-completion/completions/cloud-init' adding 'usr/share/doc/cloud-init/status.txt' adding 'usr/share/doc/cloud-init/userdata.txt' adding 'usr/share/doc/cloud-init/var-lib-cloud.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-add-apt-repos.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-ansible.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-apt.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-archive-launch-index.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-archive.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-boot-cmds.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-ca-certs.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-chef-oneiric.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-chef.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-datasources.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-disk-setup.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-gluster.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-install-packages.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-launch-index.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-lxd.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-mount-points.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-ntp.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-reporting.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-run-cmds.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-ssh-keys.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-update-apt.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-update-packages.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-user-groups.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-wireguard.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-write-files.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config-yum-repo.txt' adding 'usr/share/doc/cloud-init/examples/cloud-config.txt' adding 'usr/share/doc/cloud-init/examples/include-once.txt' adding 'usr/share/doc/cloud-init/examples/include.txt' adding 'usr/share/doc/cloud-init/examples/kernel-cmdline.txt' adding 'usr/share/doc/cloud-init/examples/part-handler-v2.txt' adding 'usr/share/doc/cloud-init/examples/part-handler.txt' adding 'usr/share/doc/cloud-init/examples/plain-ignored.txt' adding 'usr/share/doc/cloud-init/examples/user-script.txt' adding 'usr/share/doc/cloud-init/examples/seed/README' adding 'usr/share/doc/cloud-init/examples/seed/meta-data' adding 'usr/share/doc/cloud-init/examples/seed/user-data' adding 'cloud_init-22.3.3.dist-info/LICENSE' adding 'cloud_init-22.3.3.dist-info/LICENSE-Apache2.0' adding 'cloud_init-22.3.3.dist-info/LICENSE-GPLv3' adding 'cloud_init-22.3.3.dist-info/METADATA' adding 'cloud_init-22.3.3.dist-info/WHEEL' adding 'cloud_init-22.3.3.dist-info/entry_points.txt' adding 'cloud_init-22.3.3.dist-info/top_level.txt' adding 'cloud_init-22.3.3.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel * Getting dependencies for wheel... * Building wheel... Successfully built cloud_init-22.3.3-py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.10.7, pytest-7.1.2, pluggy-1.0.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /build/cloud-init/src/cloud-init-22.3.3, configfile: tox.ini, testpaths: tests/unittests plugins: mock-3.8.2 collecting ... collected 4359 items tests/unittests/test__init__.py::TestWalkerHandleHandler::test_attribute_error PASSED [ 0%] tests/unittests/test__init__.py::TestWalkerHandleHandler::test_import_error PASSED [ 0%] tests/unittests/test__init__.py::TestWalkerHandleHandler::test_no_errors PASSED [ 0%] tests/unittests/test__init__.py::TestHandlerHandlePart::test_exception_is_caught PASSED [ 0%] tests/unittests/test__init__.py::TestHandlerHandlePart::test_modfreq_per_always PASSED [ 0%] tests/unittests/test__init__.py::TestHandlerHandlePart::test_no_handle_when_modfreq_once PASSED [ 0%] tests/unittests/test__init__.py::TestHandlerHandlePart::test_normal_version_1 PASSED [ 0%] tests/unittests/test__init__.py::TestHandlerHandlePart::test_normal_version_2 PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_parse_cmdline_url_nokey_raises_keyerror PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_parse_cmdline_url_found PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_invalid_content PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_invalid_content_url PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_valid_content PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_valid_content_url PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_no_key_found PASSED [ 0%] tests/unittests/test__init__.py::TestCmdlineUrl::test_exception_warns PASSED [ 0%] tests/unittests/test_apport.py::TestApport::test_attach_user_data PASSED [ 0%] tests/unittests/test_atomic_helper.py::TestAtomicHelper::test_basic_usage PASSED [ 0%] tests/unittests/test_atomic_helper.py::TestAtomicHelper::test_file_permissions PASSED [ 0%] tests/unittests/test_atomic_helper.py::TestAtomicHelper::test_string PASSED [ 0%] tests/unittests/test_atomic_helper.py::TestAtomicHelper::test_write_json PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_errors_on_missing_instance_data_json PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_errors_on_unreadable_instance_data PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_noop_on_content_signals PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_renders_jinja_content PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_renders_jinja_content_missing_keys PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_subhandler_v2_with_clean_payload PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_handle_subhandler_v3_with_clean_payload PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_part_handler_defaults PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_part_handler_looks_up_sub_handler_types PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestJinjaTemplatePartHandler::test_jinja_template_part_handler_looks_up_subhandler_types PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_operators_to_underscores[False-data0-expected0] PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_operators_to_underscores[True-data1-expected1] PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_operators_to_underscores[False-data2-expected2] PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_operators_to_underscores[True-data3-expected3] PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_operators_to_underscores[True-data4-expected4] PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_promotes_versioned_keys_to_top_level PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_most_recent_version_of_promoted_keys PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestConvertJinjaInstanceData::test_convert_instance_data_decodes_decode_paths PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestRenderJinjaPayload::test_render_jinja_payload_logs_jinja_vars_on_debug PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestRenderJinjaPayload::test_render_jinja_payload_replaces_missing_variables_and_warns PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestShellScriptByFrequencyHandlers::test_get_script_folder_per_boot PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestShellScriptByFrequencyHandlers::test_get_script_folder_per_instance PASSED [ 0%] tests/unittests/test_builtin_handlers.py::TestShellScriptByFrequencyHandlers::test_get_script_folder_per_once PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_status_wrapper_errors[invalid_name] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_status_wrapper_errors[invalid_modes] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_status_wrapper_init_local_writes_fresh_status_info PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_status_wrapper_init_local_honor_cloud_dir PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_no_arguments_shows_usage PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_no_arguments_shows_error_message PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_all_subcommands_represented_in_help PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_modules_subcommand_parser[init] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_modules_subcommand_parser[modules] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[analyze] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[clean] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[collect-logs] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[devel] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[status] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_conditional_subcommands_from_entry_point_sys_argv[schema] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_subcommand_parser[clean] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_subcommand_parser[collect-logs] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_subcommand_parser[status] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_subcommand_parser_multi_arg[args0-expected_subcommands0] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_subcommand_parser_multi_arg[args1-expected_subcommands1] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_wb_schema_subcommand_parser PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_wb_schema_subcommand[all_spot_check] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_wb_schema_subcommand[single_spot_check] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_wb_schema_subcommand[multiple_spot_check] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_wb_schema_subcommand[bad_arg_fails] PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_single_subcommand PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_dhclient_hook_subcommand PASSED [ 1%] tests/unittests/test_cli.py::TestCLI::test_features_hook_subcommand PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_using_subp_raises_assertion_error PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_typeerrors_on_incorrect_usage PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_subp_usage_can_be_reenabled PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_subp_usage_can_be_conditionally_reenabled PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_subp_usage_can_be_conditionally_reenabled_for_multiple_cmds PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsage::test_both_marks_raise_an_error PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsageInTestSubclass::test_subp_usage_can_be_reenabled PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsageInTestSubclass::test_typeerrors_on_incorrect_usage PASSED [ 1%] tests/unittests/test_conftest.py::TestDisableSubpUsageInTestSubclass::test_using_subp_raises_exception PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_cloud_config_archive PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_cloud_config_as_x_shell_script PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_dont_allow_user_data PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_merging_cloud_config PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_mime_application_octet_stream PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_mime_gzip_compressed PASSED [ 1%] tests/unittests/test_data.py::TestConsumeUserData::test_mime_text_plain PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_mime_text_plain_shell PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_mime_text_x_shellscript PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_mixed_cloud_config PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_shellscript PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_simple_jsonp PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_simple_jsonp_no_vendor_consumed PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_simple_jsonp_vendor_and_vendor2_and_user PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_unhandled_type_warning PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_vendor_user_yaml_cloud_config PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserData::test_vendordata_script PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_cloud_config_archive PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_cloud_config_as_x_shell_script PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_dont_allow_user_data PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_include PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_include_bad_url PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_include_bad_url_no_fail PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_merging_cloud_config PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mime_application_octet_stream PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mime_gzip_compressed PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mime_text_plain PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mime_text_plain_shell PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mime_text_x_shellscript PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_mixed_cloud_config PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_shellscript PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_simple_jsonp PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_simple_jsonp_no_vendor_consumed PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_simple_jsonp_vendor_and_vendor2_and_user PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_unhandled_type_warning PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_vendor_user_yaml_cloud_config PASSED [ 2%] tests/unittests/test_data.py::TestConsumeUserDataHttp::test_vendordata_script PASSED [ 2%] tests/unittests/test_data.py::TestUDProcess::test_bytes_in_userdata PASSED [ 2%] tests/unittests/test_data.py::TestUDProcess::test_compressed_in_userdata PASSED [ 2%] tests/unittests/test_data.py::TestUDProcess::test_string_in_userdata PASSED [ 2%] tests/unittests/test_data.py::TestConvertString::test_handle_headers PASSED [ 2%] tests/unittests/test_data.py::TestConvertString::test_handle_mime_parts PASSED [ 2%] tests/unittests/test_data.py::TestConvertString::test_handles_binary_non_utf8_decodable PASSED [ 2%] tests/unittests/test_data.py::TestConvertString::test_handles_binary_utf8_decodable PASSED [ 2%] tests/unittests/test_data.py::TestFetchBaseConfig::test_cmdline_overrides_confd_runtime_and_defaults PASSED [ 2%] tests/unittests/test_data.py::TestFetchBaseConfig::test_cmdline_overrides_defaults PASSED [ 2%] tests/unittests/test_data.py::TestFetchBaseConfig::test_conf_d_overrides_defaults PASSED [ 2%] tests/unittests/test_data.py::TestFetchBaseConfig::test_only_builtin_gets_builtin PASSED [ 2%] tests/unittests/test_data.py::TestFetchBaseConfig::test_order_precedence_is_builtin_system_runtime_cmdline PASSED [ 2%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_get_parser PASSED [ 3%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_handle_args PASSED [ 3%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_run_hook_down_deletes PASSED [ 3%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_run_hook_up PASSED [ 3%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_run_hook_up_creates_dir PASSED [ 3%] tests/unittests/test_dhclient_hook.py::TestDhclientHook::test_run_hook_up_dhcp4_prefix PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_container_returns_none PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_container_returns_none_on_unknown PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_dmidecode_not_used_on_arm PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_dmidecode_used_if_no_sysfs_file_on_disk PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_empty_string_returned_instead_of_foxfox PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_freebsd_uses_kenv PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_none_returned_if_dmidecode_not_in_path PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_none_returned_if_neither_source_has_data PASSED [ 3%] tests/unittests/test_dmi.py::TestReadDMIData::test_sysfs_used_with_key_in_mapping_and_file_on_disk PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_aliyun_identified PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_aliyun_over_ec2 PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_aws_ec2_hvm PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_aws_ec2_xen PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_azure_dmi_detection_from_chassis_asset_tag PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_azure_seed_file_detection PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_bobrightbox_is_not_brightbox PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_brightbox_is_ec2 PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_config_drive PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_config_drive_interacts_with_ibmcloud_config_disk PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_config_drive_seed PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_config_drive_upper PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_configured_list_with_none PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_default_nocloud_as_vdb_iso9660 PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_default_openstack_intel_is_found PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_default_ovf_is_found PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_default_ovf_returns_not_found_on_azure PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_default_ovf_with_detect_virt_none_not_found PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_e24cloud_is_ec2 PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_e24cloud_not_active PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_freebsd_nocloud PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_gce_by_product_name PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_gce_by_serial PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_hetzner_found PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_os_code PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_os_code_different_uuid PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_template_no_userdata PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_template_no_userdata_in_provisioning PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_template_userdata PASSED [ 3%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_template_userdata_in_provisioning PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_with_configdrive_seed PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ibmcloud_with_nocloud_seed PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_lxd_containers PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_lxd_kvm PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_lxd_kvm_jammy PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_nocloud_fatboot PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_nocloud_seed PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_nocloud_seed_in_cfg PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_nocloud_seed_ubuntu_core_writable PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_nocloud_upper PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_openstack_asset_tag_copute PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_openstack_asset_tag_nova PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_openstack_on_non_intel_is_maybe PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_openstack_open_telekom_cloud PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_openstack_sap_ccloud PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_guestinfo_found PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_by_cdrom_with_different_size PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_by_cdrom_with_matching_fs_label PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_by_cdrom_with_ovf_schema_match PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_open_vm_tools_64 PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_open_vm_tools_aarch64_linux_gnu PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_open_vm_tools_x86_64_linux_gnu PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_ovf_on_vmware_iso_found_when_vmware_customization PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_path_env_gets_set_from_main PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_policy_config_disable_overrides_builtin PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_policy_disabled PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_rbx_cloud PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_rbx_cloud_lower PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_single_entry_defines_datasource PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_smartos_bhyve PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_smartos_lxbrand PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_smartos_lxbrand_requires_socket PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_envvar_activated_by_metadata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_envvar_activated_by_userdata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_envvar_activated_by_vendordata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_envvar_no_data PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_envvar_no_virt_id PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_guestinfo_activated_by_metadata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_guestinfo_activated_by_userdata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_guestinfo_activated_by_vendordata PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_guestinfo_no_data PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_guestinfo_no_virt_id PASSED [ 4%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_vmware_no_valid_transports PASSED [ 5%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_wb_print_variables PASSED [ 5%] tests/unittests/test_ds_identify.py::TestDsIdentify::test_zstack_is_ec2 PASSED [ 5%] tests/unittests/test_ds_identify.py::TestBSDNoSys::test_dmi_dmidecode PASSED [ 5%] tests/unittests/test_ds_identify.py::TestBSDNoSys::test_dmi_kenv PASSED [ 5%] tests/unittests/test_ds_identify.py::TestIsIBMProvisioning::test_config_only PASSED [ 5%] tests/unittests/test_ds_identify.py::TestIsIBMProvisioning::test_config_with_new_log PASSED [ 5%] tests/unittests/test_ds_identify.py::TestIsIBMProvisioning::test_config_with_old_log PASSED [ 5%] tests/unittests/test_ds_identify.py::TestIsIBMProvisioning::test_no_config PASSED [ 5%] tests/unittests/test_ds_identify.py::TestOracle::test_found_by_chassis PASSED [ 5%] tests/unittests/test_ds_identify.py::TestOracle::test_not_found PASSED [ 5%] tests/unittests/test_event.py::TestEvent::test_userdata_to_events PASSED [ 5%] tests/unittests/test_event.py::TestEvent::test_invalid_scope PASSED [ 5%] tests/unittests/test_event.py::TestEvent::test_invalid_event PASSED [ 5%] tests/unittests/test_features.py::TestFeatures::test_feature_without_override PASSED [ 5%] tests/unittests/test_features.py::TestFeatures::test_feature_with_override[create_override0] PASSED [ 5%] tests/unittests/test_features.py::TestFeatures::test_feature_only_in_override[create_override0] PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::test_dearmor_bad_value PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::test_gpg_list_args PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::test_gpg_dearmor_args PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::TestReceiveKeys::test_expected_gpg_command PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::TestReceiveKeys::test_no_retries_on_none PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::TestReceiveKeys::test_raises_error_after_retries PASSED [ 5%] tests/unittests/test_gpg.py::TestGPGCommands::TestReceiveKeys::test_retries_on_subp_exc PASSED [ 5%] tests/unittests/test_helpers.py::TestPaths::test_get_ipath_and_empty_instance_id_returns_none PASSED [ 5%] tests/unittests/test_helpers.py::TestPaths::test_get_ipath_and_instance_id_with_slashes PASSED [ 5%] tests/unittests/test_helpers.py::Testcloud_init_project_dir::test_top_level_dir PASSED [ 5%] tests/unittests/test_helpers.py::Testcloud_init_project_dir::test_cloud_init_project_dir PASSED [ 5%] tests/unittests/test_log.py::TestCloudInitLogger::test_logger_uses_gmtime PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merge_sub_dict PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merge_sub_dict2 PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merge_sub_list PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merges_dict PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merges_dict2 PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merges_list PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_compat_merges_str PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_merge_cc_samples PASSED [ 5%] tests/unittests/test_merging.py::TestSimpleRun::test_seed_runs PASSED [ 5%] tests/unittests/test_net.py::TestGenerateFallbackConfig::test_device_driver PASSED [ 5%] tests/unittests/test_net.py::TestGenerateFallbackConfig::test_device_driver_blacklist PASSED [ 5%] tests/unittests/test_net.py::TestGenerateFallbackConfig::test_device_driver_v2 PASSED [ 5%] tests/unittests/test_net.py::TestGenerateFallbackConfig::test_unstable_names PASSED [ 5%] tests/unittests/test_net.py::TestGenerateFallbackConfig::test_unstable_names_disabled PASSED [ 5%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_all_config PASSED [ 5%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_bond_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_bridge_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_config_with_explicit_loopback PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_default_generation PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_accept_ra_config_v1 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_accept_ra_config_v2 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_only_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_reject_ra_config_v1 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_reject_ra_config_v2 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_stateful_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_dhcpv6_stateless_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_from_v2_bond_mtu PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_from_v2_route_metric PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_from_v2_routes PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_from_v2_vlan_mtu PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_iface_name_from_device_with_matching_mac_address PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_invalid_network_mask_ipv4 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_invalid_network_mask_ipv6 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_manual_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_multiple_ipv4_default_gateways PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_multiple_ipv6_default_gateways PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_netplan_dhcp_false_disable_dhcp_in_state PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_netplan_dhcp_false_no_dhcp_in_sysconfig PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_network_config_v1_multi_iface_samples PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_network_config_v1_samples PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_openstack_rendering_samples PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_small_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_static6_from_yaml PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_stattic6_from_json PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_v4_and_v6_static_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_vlan_config PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_wakeonlan_disabled_config_v2 PASSED [ 6%] tests/unittests/test_net.py::TestRhelSysConfigRendering::test_wakeonlan_enabled_config_v2 PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_all_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_bond_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_bridge_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_config_with_explicit_loopback PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_default_generation PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_dhcpv6_only_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_dhcpv6_stateless_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_manual_config PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_network_config_v1_samples PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_openstack_rendering_samples PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_render_v4_and_v6 PASSED [ 6%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_render_v6_and_v4 PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_simple_render_ipv6_slaac PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_small_config PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_v4_and_v6_static_config PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_vlan_config PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_wakeonlan_disabled_config_v2 PASSED [ 7%] tests/unittests/test_net.py::TestOpenSuseSysConfigRendering::test_wakeonlan_enabled_config_v2 PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_all_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_bond_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_bridge_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_config_with_explicit_loopback PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_default_generation PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_dhcpv6_only_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_dhcpv6_stateless_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_manual_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_network_config_v1_samples PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_openstack_rendering_samples PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_render_v4_and_v6 PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_render_v6_and_v4 PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_simple_render_ipv6_slaac PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_small_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_v4_and_v6_static_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_vlan_config PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_wakeonlan_disabled_config_v2 PASSED [ 7%] tests/unittests/test_net.py::TestNetworkManagerRendering::test_wakeonlan_enabled_config_v2 PASSED [ 7%] tests/unittests/test_net.py::TestEniNetRendering::test_config_with_explicit_loopback PASSED [ 7%] tests/unittests/test_net.py::TestEniNetRendering::test_default_generation PASSED [ 7%] tests/unittests/test_net.py::TestEniNetRendering::test_v2_route_metric_to_eni PASSED [ 7%] tests/unittests/test_net.py::TestNetplanNetRendering::test_default_generation PASSED [ 7%] tests/unittests/test_net.py::TestNetplanCleanDefault::test_clean_known_config_cleaned PASSED [ 7%] tests/unittests/test_net.py::TestNetplanCleanDefault::test_clean_known_config_cleans_only_expected PASSED [ 7%] tests/unittests/test_net.py::TestNetplanCleanDefault::test_clean_unknown_config_not_cleaned PASSED [ 7%] tests/unittests/test_net.py::TestNetplanPostcommands::test_netplan_postcmds PASSED [ 7%] tests/unittests/test_net.py::TestNetplanPostcommands::test_netplan_render_calls_postcmds PASSED [ 7%] tests/unittests/test_net.py::TestEniNetworkStateToEni::test_no_header PASSED [ 7%] tests/unittests/test_net.py::TestEniNetworkStateToEni::test_no_hwaddress PASSED [ 7%] tests/unittests/test_net.py::TestEniNetworkStateToEni::test_with_header PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_convert_dhcp PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_convert_dhcp6 PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_convert_static PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_with_b64 PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_with_b64_gz PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_with_net_config_disabled PASSED [ 7%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_cmdline_with_net_config_unencoded_logs_error PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineConfigParsing::test_config_from_cmdline_net_cfg PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_cmdline_embedded_ip PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_cmdline_no_lhand PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_empty_cmdline PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_whitespace_cmdline PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_with_both_ip_ip6 PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_with_faux_ip PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_with_ip PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_with_ip6 PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_with_no_ip_or_ip6 PASSED [ 8%] tests/unittests/test_net.py::TestCmdlineKlibcNetworkConfigSource::test_without_ip PASSED [ 8%] tests/unittests/test_net.py::TestReadInitramfsConfig::test_first_applicable_source_is_used PASSED [ 8%] tests/unittests/test_net.py::TestReadInitramfsConfig::test_no_applicable_sources PASSED [ 8%] tests/unittests/test_net.py::TestReadInitramfsConfig::test_no_sources PASSED [ 8%] tests/unittests/test_net.py::TestReadInitramfsConfig::test_one_applicable_source PASSED [ 8%] tests/unittests/test_net.py::TestReadInitramfsConfig::test_one_applicable_source_after_inapplicable_sources PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::test_render_output_has_yaml_no_aliases PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::test_render_output_supports_both_grat_arp_spelling PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_all PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_bond_netplan PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_bond_v2_input_netplan PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_dhcpv6_accept_ra PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_dhcpv6_only PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_dhcpv6_reject_ra PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_dhcpv6_stateful PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_dhcpv6_stateless PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_ipv6_slaac PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_manual PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_small_netplan PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_v4_and_v6 PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_render_v4_and_v6_static PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_wakeonlan_disabled_config_v2 PASSED [ 8%] tests/unittests/test_net.py::TestNetplanRoundTrip::testsimple_wakeonlan_enabled_config_v2 PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::test_ipv6_static_routes PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::test_routes_rendered PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_convert_and_render PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_all PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_bond PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_dhcpv6_accept_ra PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_dhcpv6_only PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_dhcpv6_reject_ra PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_dhcpv6_stateful PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_dhcpv6_stateless PASSED [ 8%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_ipv6_slaac PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_manual PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_small PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_v4_and_v6 PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_render_v4_and_v6_static PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_wakeonlan_disabled_config_v2 PASSED [ 9%] tests/unittests/test_net.py::TestEniRoundTrip::testsimple_wakeonlan_enabled_config_v2 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdNetRendering::test_networkd_default_generation PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::test_dhcpv6_accept_ra_config_v1 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::test_dhcpv6_accept_ra_config_v2 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::test_dhcpv6_reject_ra_config_v1 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::test_dhcpv6_reject_ra_config_v2 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::testsimple_render_dhcpv6_only PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::testsimple_render_small_networkd PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::testsimple_render_v4_and_v6 PASSED [ 9%] tests/unittests/test_net.py::TestNetworkdRoundTrip::testsimple_render_v4_and_v6_static PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[RendererNotFoundError-False-False-False-False-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[eni-False-True-False-False-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[eni-True-True-False-False-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[netplan-True-False-False-False-False0] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[netplan-True-False-False-False-False1] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[sysconfig-False-False-True-False-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[sysconfig-False-False-True-True-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[network-manager-False-False-False-True-False] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[network-manager-False-False-False-True-True] PASSED [ 9%] tests/unittests/test_net.py::TestRenderersSelect::test_valid_renderer_from_defaults_depending_on_availability[networkd-False-False-False-False-True] PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_eni_and_sysconfig_available PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_first_in_priority PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_networkd_available PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_search_returns_empty_on_none PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_select_none_found_raises PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_select_positive PASSED [ 9%] tests/unittests/test_net.py::TestNetRenderers::test_sysconfig_available_uses_variant_mapping PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfaces::test_gi_excludes_any_without_mac_address PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfaces::test_gi_excludes_bridges PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfaces::test_gi_excludes_stolen_macs PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfaces::test_gi_includes_duplicate_macs PASSED [ 9%] tests/unittests/test_net.py::TestInterfaceHasOwnMac::test_expected_values PASSED [ 9%] tests/unittests/test_net.py::TestInterfaceHasOwnMac::test_non_strict_with_no_addr_assign_type PASSED [ 9%] tests/unittests/test_net.py::TestInterfaceHasOwnMac::test_strict_with_no_addr_assign_type_raises PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_duplicates_of_empty_mac_are_ok PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_excludes_any_without_mac_address PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_excludes_bridges PASSED [ 9%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_excludes_stolen_macs PASSED [ 10%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_excludes_vlans PASSED [ 10%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_ib PASSED [ 10%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_raise_exception_on_duplicate_macs PASSED [ 10%] tests/unittests/test_net.py::TestGetInterfacesByMac::test_skip_all_zeros PASSED [ 10%] tests/unittests/test_net.py::TestInterfacesSorting::test_natural_order PASSED [ 10%] tests/unittests/test_net.py::TestGetIBHwaddrsByInterface::test_ethernet PASSED [ 10%] tests/unittests/test_net.py::TestGetIBHwaddrsByInterface::test_ib PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_all PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_all_bounce PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_duplicate_macs PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_duplicate_macs_driver_no_devid PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_macs_case_insensitive PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_multi_mac_dups PASSED [ 10%] tests/unittests/test_net.py::TestRenameInterfaces::test_rename_no_driver_no_device_id PASSED [ 10%] tests/unittests/test_net.py::TestNetworkState::test_bcast_addr PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_empty_list PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_priority PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_target PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_first_not_available PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_priority_not_exist PASSED [ 10%] tests/unittests/test_net_activators.py::TestSearchAndSelect::test_none_available PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsAvailable::test_available[IfUpDownActivator-available_calls0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsAvailable::test_available[NetplanActivator-available_calls1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsAvailable::test_available[NetworkdActivator-available_calls2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interface[IfUpDownActivator-expected_call_list0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interface[NetplanActivator-expected_call_list1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interface[NetworkManagerActivator-expected_call_list2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interface[NetworkdActivator-expected_call_list3] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interfaces[IfUpDownActivator-expected_call_list0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interfaces[NetplanActivator-expected_call_list1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interfaces[NetworkManagerActivator-expected_call_list2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_interfaces[NetworkdActivator-expected_call_list3] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v1[IfUpDownActivator-expected_call_list0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v1[NetplanActivator-expected_call_list1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v1[NetworkManagerActivator-expected_call_list2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v1[NetworkdActivator-expected_call_list3] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v2[IfUpDownActivator-expected_call_list0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v2[NetplanActivator-expected_call_list1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v2[NetworkManagerActivator-expected_call_list2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringUp::test_bring_up_all_interfaces_v2[NetworkdActivator-expected_call_list3] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interface[IfUpDownActivator-expected_call_list0] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interface[NetplanActivator-expected_call_list1] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interface[NetworkManagerActivator-expected_call_list2] PASSED [ 10%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interface[NetworkdActivator-expected_call_list3] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interfaces[IfUpDownActivator-expected_call_list0] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interfaces[NetplanActivator-expected_call_list1] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interfaces[NetworkManagerActivator-expected_call_list2] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_interfaces[NetworkdActivator-expected_call_list3] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v1[IfUpDownActivator-expected_call_list0] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v1[NetplanActivator-expected_call_list1] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v1[NetworkManagerActivator-expected_call_list2] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v1[NetworkdActivator-expected_call_list3] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v2[IfUpDownActivator-expected_call_list0] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v2[NetplanActivator-expected_call_list1] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v2[NetworkManagerActivator-expected_call_list2] PASSED [ 11%] tests/unittests/test_net_activators.py::TestActivatorsBringDown::test_bring_down_all_interfaces_v2[NetworkdActivator-expected_call_list3] PASSED [ 11%] tests/unittests/test_net_freebsd.py::TestInterfacesByMac::test_get_interfaces_by_mac PASSED [ 11%] tests/unittests/test_net_freebsd.py::TestFreeBSDRoundTrip::test_render_output_has_yaml PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_old_nettools_pformat PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_new_nettools_pformat PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_freebsd_nettools_pformat PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_iproute_pformat[1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000\n link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n inet 127.0.0.1/8 scope host lo\\ valid_lft forever preferred_lft forever\n inet6 ::1/128 scope host \\ valid_lft forever preferred_lft forever\n2: enp0s25: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000\n link/ether 50:7b:9d:2c:af:91 brd ff:ff:ff:ff:ff:ff\n inet 192.168.2.18/24 metric 100 brd 192.168.2.255 scope global dynamic enp0s25\n valid_lft 84174sec preferred_lft 84174sec\n inet6 fe80::7777:2222:1111:eeee/64 scope global\n valid_lft forever preferred_lft forever\n inet6 fe80::8107:2b92:867e:f8a6/64 scope link\n valid_lft forever preferred_lft forever\n-False] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_iproute_pformat[[\n {\n "ifindex": 1,\n "ifname": "lo",\n "flags": [\n "LOOPBACK",\n "UP",\n "LOWER_UP"\n ],\n "mtu": 65536,\n "qdisc": "noqueue",\n "operstate": "UNKNOWN",\n "group": "default",\n "txqlen": 1000,\n "link_type": "loopback",\n "address": "00:00:00:00:00:00",\n "broadcast": "00:00:00:00:00:00",\n "addr_info": [\n {\n "family": "inet",\n "local": "127.0.0.1",\n "prefixlen": 8,\n "scope": "host",\n "label": "lo",\n "valid_life_time": 4294967295,\n "preferred_life_time": 4294967295\n },\n {\n "family": "inet6",\n "local": "::1",\n "prefixlen": 128,\n "scope": "host",\n "valid_life_time": 4294967295,\n "preferred_life_time": 4294967295\n }\n ]\n },\n {\n "ifindex": 23,\n "link_index": 24,\n "ifname": "enp0s25",\n "flags": [\n "BROADCAST",\n "MULTICAST",\n "UP",\n "LOWER_UP"\n ],\n "mtu": 1500,\n "qdisc": "noqueue",\n "operstate": "UP",\n "group": "default",\n "txqlen": 1000,\n "link_type": "ether",\n "address": "50:7b:9d:2c:af:91",\n "broadcast": "ff:ff:ff:ff:ff:ff",\n "link_netnsid": 0,\n "addr_info": [\n {\n "family": "inet",\n "local": "192.168.2.18",\n "prefixlen": 24,\n "metric": 100,\n "broadcast": "192.168.2.255",\n "scope": "global",\n "dynamic": true,\n "label": "enp0s25",\n "valid_life_time": 2339,\n "preferred_life_time": 2339\n },\n {\n "family": "inet6",\n "local": "fe80::7777:2222:1111:eeee",\n "prefixlen": 64,\n "scope": "global",\n "dynamic": true,\n "mngtmpaddr": true,\n "noprefixroute": true,\n "valid_life_time": 6823,\n "preferred_life_time": 3223\n },\n {\n "family": "inet6",\n "local": "fe80::8107:2b92:867e:f8a6",\n "prefixlen": 64,\n "scope": "link",\n "valid_life_time": 4294967295,\n "preferred_life_time": 4294967295\n }\n ]\n }\n]\n-True] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_warn_on_missing_commands PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_nettools_down PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_iproute_down[netinfo/sample-ipaddrshow-output-down-False] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_iproute_down[netinfo/sample-ipaddrshow-json-down-True] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_pformat_with_down PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_route_nettools_pformat PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_route_iproute_pformat PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_route_warn_on_missing_commands PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_iproute_json[input0-expected0] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_iproute_json[input1-expected1] PASSED [ 11%] tests/unittests/test_netinfo.py::TestNetInfo::test_netdev_info_iproute_json[input2-expected2] PASSED [ 11%] tests/unittests/test_pathprefix2dict.py::TestPathPrefix2Dict::test_no_required_and_optional PASSED [ 11%] tests/unittests/test_pathprefix2dict.py::TestPathPrefix2Dict::test_required_and_optional PASSED [ 11%] tests/unittests/test_pathprefix2dict.py::TestPathPrefix2Dict::test_required_missing PASSED [ 11%] tests/unittests/test_pathprefix2dict.py::TestPathPrefix2Dict::test_required_only PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_unpickle_called PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[InstanceVersionNotUsed] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[MissingVersionHandled] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[OverridenVersionHonored] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[StateIsRestored] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[UnpickleCanBeUnoverriden] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[VersionDefaultsToZero] PASSED [ 11%] tests/unittests/test_persistence.py::TestPickleMixin::test_subclasses[VersionIsPoppedFromState] PASSED [ 11%] tests/unittests/test_registry.py::TestDictRegistry::test_added_item_included_in_output PASSED [ 11%] tests/unittests/test_registry.py::TestDictRegistry::test_keys_cannot_be_replaced PASSED [ 12%] tests/unittests/test_registry.py::TestDictRegistry::test_modifying_registered_items_isnt_exposed_to_other_callers PASSED [ 12%] tests/unittests/test_registry.py::TestDictRegistry::test_registry_starts_out_empty PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg_subp PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[amazon] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[arch] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[centos] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[debian] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[eurolinux] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[fedora] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[freebsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[gentoo] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[netbsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[openbsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[photon] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[rhel] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[suse] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[ubuntu] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_distro_in_cloud_cfg[unknown] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[amazon] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[arch] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[centos] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[debian] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[eurolinux] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[fedora] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[freebsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[gentoo] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[netbsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[openbsd] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[photon] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[rhel] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[suse] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[ubuntu] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_default_user_in_cloud_cfg[unknown] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_network_renderer_priority_in_cloud_cfg[freebsd-renderers0] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_network_renderer_priority_in_cloud_cfg[netbsd-renderers1] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_network_renderer_priority_in_cloud_cfg[openbsd-renderers2] PASSED [ 12%] tests/unittests/test_render_cloudcfg.py::TestRenderCloudCfg::test_variant_sets_network_renderer_priority_in_cloud_cfg[ubuntu-renderers3] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[scalar-scalar-schemamarks0] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[#\na: va\n \nb: vb\n#\nc: vc-loaded_yaml1-schemamarks1] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[a:\n - a1\n\n - a2\n-loaded_yaml2-schemamarks2] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[a:\n a1:\n\n aa1: aa1v\n-loaded_yaml3-schemamarks3] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[[list, of, scalar]-loaded_yaml4-schemamarks4] PASSED [ 12%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[{a: [a1, a2], b: [b3]}-loaded_yaml5-schemamarks5] PASSED [ 13%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[a: [a1, a2]\nb: [b3]-loaded_yaml6-schemamarks6] PASSED [ 13%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[a:\n- a1\n- a2\nb: [b3]-loaded_yaml7-schemamarks7] PASSED [ 13%] tests/unittests/test_safeyaml.py::TestLoadWithMarks::test_schema_marks_preserved[a:\n- a1\n- a2\nb:\n- b3-loaded_yaml8-schemamarks8] PASSED [ 13%] tests/unittests/test_simpletable.py::TestSimpleTable::test_authorized_keys PASSED [ 13%] tests/unittests/test_simpletable.py::TestSimpleTable::test_get_string PASSED [ 13%] tests/unittests/test_simpletable.py::TestSimpleTable::test_net_dev PASSED [ 13%] tests/unittests/test_simpletable.py::TestSimpleTable::test_no_rows PASSED [ 13%] tests/unittests/test_simpletable.py::TestSimpleTable::test_route_ipv4 PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[dsa-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[dsa-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[dsa-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[dsa-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[rsa-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[rsa-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[rsa-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[rsa-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ed25519-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ed25519-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ed25519-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ed25519-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-cert-v01@openssh.com-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-cert-v01@openssh.com-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-cert-v01@openssh.com-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-cert-v01@openssh.com-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp256-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-cert-v01@openssh.com-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-cert-v01@openssh.com-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-cert-v01@openssh.com-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-cert-v01@openssh.com-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp384-False-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-cert-v01@openssh.com-True-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-cert-v01@openssh.com-True-False] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-cert-v01@openssh.com-False-True] PASSED [ 13%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ecdsa-sha2-nistp521-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256-cert-v01@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256-cert-v01@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256-cert-v01@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ecdsa-sha2-nistp256@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519-cert-v01@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519-cert-v01@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519-cert-v01@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[sk-ssh-ed25519@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-cert-v01@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-cert-v01@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-cert-v01@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-dss-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-cert-v01@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-cert-v01@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-cert-v01@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-ed25519-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-cert-v01@openssh.com-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-cert-v01@openssh.com-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-cert-v01@openssh.com-False-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-cert-v01@openssh.com-False-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-True-True] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-True-False] PASSED [ 14%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-False-True] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-rsa-False-False] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss-cert-v01@openssh.com-True-True] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss-cert-v01@openssh.com-True-False] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss-cert-v01@openssh.com-False-True] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss-cert-v01@openssh.com-False-False] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss@openssh.com-True-True] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss@openssh.com-True-False] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss@openssh.com-False-True] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse[ssh-xmss@openssh.com-False-False] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse_with_options_passed_in PASSED [ 15%] tests/unittests/test_ssh_util.py::TestAuthKeyLineParser::test_parse_invalid_keytype PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateAuthorizedKeys::test_new_keys_replace[new_entries0] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateAuthorizedKeys::test_new_keys_replace[skip-invalid-entries] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_dummy_file[empty-file] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_dummy_file[not-a-file] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_comment_line[comment_line] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_comment_line[two-comment_lines] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_blank_lines PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_case_config[lower-case] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_case_config[upper-case] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_case_config[lower-case-with-equals] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestParseSSHConfig::test_case_config[upper-case-with-equals] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_update_ssh_config_lines[new_option_added] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_update_ssh_config_lines[commented_out_not_updated_but_appended] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_option_without_value PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_single_option_updated PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_multiple_updates_with_add PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_return_empty_if_no_changes PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfigLines::test_keycase_not_modified PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_modified PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_not_modified PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_without_include PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_with_include[Include {mycfg}.d/*.conf] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_with_include[Include {mycfg}.d/*.conf # comment] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_with_commented_include PASSED [ 15%] tests/unittests/test_ssh_util.py::TestUpdateSshConfig::test_with_other_include PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[user] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[user_file] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[user_file_2] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[multiple] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[multiple_2] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[relative] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[home] PASSED [ 15%] tests/unittests/test_ssh_util.py::TestBasicAuthorizedKeyParse::test_render_authorizedkeysfile_paths[all] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_single_user_two_local_files[False] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_single_user_two_local_files[True] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_single_user_local_global_files[False] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_single_user_local_global_files[True] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_single_user_global_file PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_local_file_standard PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_local_file_custom PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_local_global_files PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_local_global_files_badguy PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_unaccessible_file PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_accessible_file PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_hardcoded_single_user_file[False] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_hardcoded_single_user_file[True] PASSED [ 16%] tests/unittests/test_ssh_util.py::TestMultipleSshAuthorizedKeysFile::test_two_users_hardcoded_user_files PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_kernel[net_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_kernel[net_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_initrd[net_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_initrd[net_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_datasrc[net_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_datasrc[net_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_sysconfig[net_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_disabled_by_sysconfig[net_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_uses_datasrc_order[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_uses_datasrc_order[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_warns_if_datasrc_uses_invalid_src[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_warns_if_datasrc_uses_invalid_src[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_warns_if_datasrc_uses_unavailable_src[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test__find_networking_config_warns_if_datasrc_uses_unavailable_src[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_kernel[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_kernel[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_initramfs[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_initramfs[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_system_cfg[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_system_cfg[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_datasrc_cfg[in_config0-out_config0] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_datasrc_cfg[in_config1-out_config1] PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_wb__find_networking_config_returns_fallback PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_config_disabled PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_on_new_instance PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_on_same_instance_id PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_allowed_when_default_boot PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_disabled_when_no_default_boot PASSED [ 16%] tests/unittests/test_stages.py::TestInit::test_apply_network_allowed_with_userdata_overrides PASSED [ 17%] tests/unittests/test_stages.py::TestInit::test_apply_network_disabled_when_unsupported PASSED [ 17%] tests/unittests/test_stages.py::TestInit_InitializeFilesystem::test_ensure_file_not_called_if_no_log_file_configured PASSED [ 17%] tests/unittests/test_stages.py::TestInit_InitializeFilesystem::test_log_files_existence_is_ensured_if_configured PASSED [ 17%] tests/unittests/test_stages.py::TestInit_InitializeFilesystem::test_existing_file_permissions_are_not_modified PASSED [ 17%] tests/unittests/test_subp.py::TestPrependBaseCommands::test_prepend_base_command_errors_on_neither_string_nor_list PASSED [ 17%] tests/unittests/test_subp.py::TestPrependBaseCommands::test_prepend_base_command_prepends_on_non_base_list_commands PASSED [ 17%] tests/unittests/test_subp.py::TestPrependBaseCommands::test_prepend_base_command_removes_first_item_when_none PASSED [ 17%] tests/unittests/test_subp.py::TestPrependBaseCommands::test_prepend_base_command_warns_on_non_base_string_commands PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_bogus_command_logs_status_messages PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_bunch_of_slashes_in_path PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_c_lang_can_take_utf8_args PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_command_logs_exit_codes_to_status_cb PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_exception_has_out_err_are_bytes_if_decode_false PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_exception_has_out_err_are_bytes_if_decode_true PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_returns_none_if_no_capture PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_capture_stderr PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_combined_stderr_stdout PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_decode_ignore PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_decode_invalid_utf8_replaces PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_decode_strict_raises PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_decode_strict_valid_utf8 PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_env_and_update_env PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_handles_bytestrings PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_handles_strings PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_handles_utf8 PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_reads_env PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_respects_decode_false PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_update_env PASSED [ 17%] tests/unittests/test_subp.py::TestSubp::test_subp_warn_missing_shebang PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_mkdtemp_default_non_root PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_mkdtemp_default_non_root_needs_exe PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_mkdtemp_default_root PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_mkstemp_default_non_root PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_mkstemp_default_root PASSED [ 17%] tests/unittests/test_temp_utils.py::TestTempUtils::test_tempdir_error_suppression PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_do_extension_render_to_string PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_nonascii_render_from_file PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_nonascii_render_to_file PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_nonascii_render_to_string PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_nonascii_render_undefined_variables_to_default_py3 PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_jinja_warns_on_missing_dep_and_uses_basic_renderer SKIPPED (Jinja dependency present.) [ 17%] tests/unittests/test_templating.py::TestTemplates::test_render_basic PASSED [ 17%] tests/unittests/test_templating.py::TestTemplates::test_render_basic2 PASSED [ 18%] tests/unittests/test_templating.py::TestTemplates::test_render_basic_deeper PASSED [ 18%] tests/unittests/test_templating.py::TestTemplates::test_render_basic_no_parens PASSED [ 18%] tests/unittests/test_templating.py::TestTemplates::test_render_basic_parens PASSED [ 18%] tests/unittests/test_templating.py::TestTemplates::test_render_default PASSED [ 18%] tests/unittests/test_templating.py::TestTemplates::test_render_jinja PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_pkl_load_defines_all_init_side_effect_attributes[focal-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_networking_set_on_distro[focal-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_blacklist_drivers_set_on_networking[focal-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_paths_has_run_dir_attribute[focal-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_vendordata_exists[focal-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_pkl_load_defines_all_init_side_effect_attributes[focal-20.3-2-g371b392c-0ubuntu1~20.04.1.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_networking_set_on_distro[focal-20.3-2-g371b392c-0ubuntu1~20.04.1.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_blacklist_drivers_set_on_networking[focal-20.3-2-g371b392c-0ubuntu1~20.04.1.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_paths_has_run_dir_attribute[focal-20.3-2-g371b392c-0ubuntu1~20.04.1.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_vendordata_exists[focal-20.3-2-g371b392c-0ubuntu1~20.04.1.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_pkl_load_defines_all_init_side_effect_attributes[focal-azure-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_networking_set_on_distro[focal-azure-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_blacklist_drivers_set_on_networking[focal-azure-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_paths_has_run_dir_attribute[focal-azure-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_vendordata_exists[focal-azure-20.1-10-g71af48df-0ubuntu5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_pkl_load_defines_all_init_side_effect_attributes[trusty-14.04.1-0.7.5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_networking_set_on_distro[trusty-14.04.1-0.7.5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_blacklist_drivers_set_on_networking[trusty-14.04.1-0.7.5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_paths_has_run_dir_attribute[trusty-14.04.1-0.7.5.pkl] PASSED [ 18%] tests/unittests/test_upgrade.py::TestUpgrade::test_vendordata_exists[trusty-14.04.1-0.7.5.pkl] PASSED [ 18%] tests/unittests/test_url_helper.py::TestOAuthHeaders::test_oauth_headers_calls_oathlibclient_when_available PASSED [ 18%] tests/unittests/test_url_helper.py::TestOAuthHeaders::test_oauth_headers_raises_not_implemented_when_oathlib_missing PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_read_file_or_url_str_from_file PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_read_file_or_url_str_from_url PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_read_file_or_url_str_from_url_redacting_headers_from_logs PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_read_file_or_url_str_from_url_redacts_noheaders PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_read_file_or_url_str_from_url_streamed PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrl::test_wb_read_url_defaults_honored_by_read_file_or_url_callers PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[10] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[1.2] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[11] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[timeout3] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[timeout4] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_read_file_or_url_passes_params_to_readurl[timeout5] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[-1-00] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[-1-01] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[None-None] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[1-1.00] PASSED [ 18%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[1.2-1.2] PASSED [ 19%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[1-1.01] PASSED [ 19%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[readurl_timeout6-request_timeout6] PASSED [ 19%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[readurl_timeout7-request_timeout7] PASSED [ 19%] tests/unittests/test_url_helper.py::TestReadFileOrUrlParameters::test_readurl_timeout[readurl_timeout8-request_timeout8] PASSED [ 19%] tests/unittests/test_url_helper.py::TestRetryOnUrlExc::test_do_not_retry_non_urlerror PASSED [ 19%] tests/unittests/test_url_helper.py::TestRetryOnUrlExc::test_perform_retries_on_not_found PASSED [ 19%] tests/unittests/test_url_helper.py::TestRetryOnUrlExc::test_perform_retries_on_timeout PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses0-1-1-one] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses1-1-0-None] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses2-0-1-two] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses3-0-1-one] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses4-0-1-two] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack[-addresses5-0-1-tri] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack_exceptions[-addresses0-0-1-division by zero-ZeroDivisionError] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack_exceptions[-addresses1-0-1-division by zero-ZeroDivisionError] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack_exceptions[-addresses2-0-1-list index out of range-IndexError] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack_exceptions[-addresses3-0-1-soapstone is not effective soap-Exception] PASSED [ 19%] tests/unittests/test_url_helper.py::TestDualStack::test_dual_stack_staggered PASSED [ 19%] tests/unittests/test_url_helper.py::TestUrlHelper::test_order[addresses0-0-SUCCESS] PASSED [ 19%] tests/unittests/test_url_helper.py::TestUrlHelper::test_order[addresses1-1-SUCCESS] PASSED [ 19%] tests/unittests/test_url_helper.py::TestUrlHelper::test_order[addresses2-2-SUCCESS] PASSED [ 19%] tests/unittests/test_url_helper.py::TestUrlHelper::test_order[addresses3-0-SUCCESS] PASSED [ 19%] tests/unittests/test_url_helper.py::TestUrlHelper::test_timeout PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_parse_mount_info_no_opts_no_arg PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_parse_mount_info_no_opts_arg PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_parse_mount_info_with_opts PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_mount_is_rw PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_mount_is_ro PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_read_conf_d_no_permissions PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_read_conf_with_confd_no_permissions[False-expected_call0] PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_read_conf_with_confd_no_permissions[True-expected_call1] PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_fetch_ssl_details[True] PASSED [ 19%] tests/unittests/test_util.py::TestUtil::test_fetch_ssl_details[False] PASSED [ 19%] tests/unittests/test_util.py::TestSymlink::test_sym_link_create_dangling PASSED [ 19%] tests/unittests/test_util.py::TestSymlink::test_sym_link_dangling_link PASSED [ 19%] tests/unittests/test_util.py::TestSymlink::test_sym_link_simple PASSED [ 19%] tests/unittests/test_util.py::TestSymlink::test_sym_link_source_exists PASSED [ 19%] tests/unittests/test_util.py::TestUptime::test_uptime_non_linux_path PASSED [ 19%] tests/unittests/test_util.py::TestShellify::test_input_dict_raises_type_error PASSED [ 19%] tests/unittests/test_util.py::TestShellify::test_input_str_raises_type_error PASSED [ 19%] tests/unittests/test_util.py::TestShellify::test_supports_comments PASSED [ 19%] tests/unittests/test_util.py::TestShellify::test_supports_strings_and_lists PASSED [ 19%] tests/unittests/test_util.py::TestShellify::test_value_with_int_raises_type_error PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_cfg_fqdn_and_hostname PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_cfg_hostname_with_domain PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_cfg_hostname_without_domain PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_only_cfg_fqdn PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_passes_metadata_only_to_cloud PASSED [ 20%] tests/unittests/test_util.py::TestGetHostnameFqdn::test_get_hostname_fqdn_from_without_fqdn_or_hostname PASSED [ 20%] tests/unittests/test_util.py::TestBlkid::test_blkid_no_cache_uses_no_cache PASSED [ 20%] tests/unittests/test_util.py::TestBlkid::test_functional_blkid PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_subp_exception_raises_to_caller PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_exists_and_file_exists PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_exists_and_not_exists PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_exists_and_timeout PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_no_params PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_timeout_int PASSED [ 20%] tests/unittests/test_util.py::TestUdevadmSettle::test_with_timeout_string PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_almalinux8_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_almalinux8_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_centos6 PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_centos7_redhat_release PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_cloud8_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_cloud8_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_copr_centos PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_debian PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_distro_bare_name PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_distro_no_data PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_distro_no_impl PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_distro_plat_data PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_distro_quoted_name PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_eurolinux7_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_eurolinux7_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_eurolinux8_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_eurolinux8_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_freebsd PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_miraclelinux8_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_miraclelinux8_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_openeuler PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_openmandriva PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_opensuse PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_opensuse_l15 PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_opensuse_tw PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_photon_os_release PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_redhat6_rhrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_redhat7_osrelease PASSED [ 20%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_redhat7_rhrelease PASSED [ 21%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_rocky8_osrelease PASSED [ 21%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_rocky8_rhrelease PASSED [ 21%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_virtuozzo8_osrelease PASSED [ 21%] tests/unittests/test_util.py::TestGetLinuxDistro::test_get_linux_virtuozzo8_rhrelease PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info0-almalinux] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info1-alpine] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info2-arch] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info3-centos] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info4-cloudlinux] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info5-debian] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info6-eurolinux] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info7-fedora] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info8-openeuler] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info9-photon] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info10-rhel] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info11-rocky] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info12-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info13-virtuozzo] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info14-ubuntu] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info15-ubuntu] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info16-ubuntu] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info17-rhel] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info18-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info19-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info20-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info21-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info22-suse] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info23-linux] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info24-windows] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info25-darwin] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info26-freebsd] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info27-netbsd] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info28-openbsd] PASSED [ 21%] tests/unittests/test_util.py::TestGetVariant::test_get_variant[info29-dragonfly] PASSED [ 21%] tests/unittests/test_util.py::TestJsonDumps::test_is_str PASSED [ 21%] tests/unittests/test_util.py::TestJsonDumps::test_non_utf8 PASSED [ 21%] tests/unittests/test_util.py::TestJsonDumps::test_utf8 PASSED [ 21%] tests/unittests/test_util.py::TestIsLXD::test_is_lxd_false_when_sock_device_absent PASSED [ 21%] tests/unittests/test_util.py::TestIsLXD::test_is_lxd_true_on_sock_device PASSED [ 21%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[random_string] PASSED [ 21%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[foo cc: end_cc bar-None] PASSED [ 21%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[foo cc: ssh_pwauth: true-expected_cfg2] PASSED [ 21%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[foo cc: ssh_pwauth: true\\n-expected_cfg3] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[foo cc: ssh_pwauth: true end_cc bar-expected_cfg4] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id: [smoser, kirkland]\\n-expected_cfg5] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id: %5Bsmoser, kirkland%5D end_cc-expected_cfg6] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id%3A%20%5Buser1%2C%20user2%5D end_cc-expected_cfg7] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ntp: {enabled: true, ntp_client: myclient} end_cc-expected_cfg8] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id: smoser end_cc-expected_cfg9] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id: [smoser, bob]\\nruncmd: [ [ ls, -l ], echo hi ] end_cc-expected_cfg10] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id: %5Bsmoser, bob%5D\\nruncmd: [ [ ls, -l ], echo hi ] end_cc-expected_cfg11] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id%3A%20%5Bsmoser%2C%20bob%5D%5Cnruncmd%3A%20%5B%20%5B%20ls%2C%20-l%20%5D%2C%20echo%20hi%20%5D end_cc-expected_cfg12] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc: ssh_import_id%3A%20%5Bsmoser%2C%20bob%5D%0Aruncmd%3A%20%5B%20%5B%20ls%2C%20-l%20%5D%2C%20echo%20hi%20%5D end_cc-expected_cfg13] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc:ssh_import_id: [smoser, bob] end_cc cc: runcmd: [ [ ls, -l ] ] end_cc-expected_cfg14] PASSED [ 22%] tests/unittests/test_util.py::TestReadCcFromCmdline::test_read_conf_from_cmdline_config[cc:ssh_import_id%3A%20%5Bsmoser%5D end_cc cc:runcmd%3A%20%5B%20%5B%20ls%2C%20-l%20%5D%20%5D end_cc-expected_cfg15] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_normalize_mtype_on_bsd[iso9660-cd9660] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_normalize_mtype_on_bsd[vfat-msdos] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_normalize_mtype_on_bsd[msdosfs-msdos] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_normalize_mtype_on_bsd[ufs-ufs] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_typeerror_raised_for_invalid_mtype[0] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_typeerror_raised_for_invalid_mtype[0.0] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_typeerror_raised_for_invalid_mtype[invalid_mtype2] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_already_mounted_does_not_mount_or_umount_anything PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_already_mounted_calls_callback[/] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_already_mounted_calls_callback[] PASSED [ 22%] tests/unittests/test_util.py::TestMountCb::test_already_mounted_calls_callback_with_data PASSED [ 22%] tests/unittests/test_util.py::TestEnsureFile::test_parameters_passed_through PASSED [ 22%] tests/unittests/test_util.py::TestEnsureFile::test_defaults[mode-420] PASSED [ 22%] tests/unittests/test_util.py::TestEnsureFile::test_defaults[preserve_mode-False] PASSED [ 22%] tests/unittests/test_util.py::TestEnsureFile::test_static_parameters_are_passed PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_sets_umask[outfmt] PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_sets_umask[errfmt] PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_sets_group_id_if_adm_group_present[outfmt] PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_sets_group_id_if_adm_group_present[errfmt] PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_handles_absent_adm_group_gracefully[outfmt] PASSED [ 22%] tests/unittests/test_util.py::TestRedirectOutputPreexecFn::test_preexec_fn_handles_absent_adm_group_gracefully[errfmt] PASSED [ 22%] tests/unittests/test_util.py::TestGetCfgOptionListOrStr::test_found_convert_to_list PASSED [ 22%] tests/unittests/test_util.py::TestGetCfgOptionListOrStr::test_found_with_default PASSED [ 22%] tests/unittests/test_util.py::TestGetCfgOptionListOrStr::test_not_found_no_default PASSED [ 22%] tests/unittests/test_util.py::TestGetCfgOptionListOrStr::test_not_found_with_default PASSED [ 22%] tests/unittests/test_util.py::TestGetCfgOptionListOrStr::test_value_is_none PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_basic_usage PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_custom_omode PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_dir_is_created_if_required PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_dir_is_not_created_if_ensure_dir_false PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_explicit_mode PASSED [ 22%] tests/unittests/test_util.py::TestWriteFile::test_preserve_mode_no_existing PASSED [ 23%] tests/unittests/test_util.py::TestWriteFile::test_preserve_mode_with_existing PASSED [ 23%] tests/unittests/test_util.py::TestWriteFile::test_restorecon_if_possible_is_called PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_deletes_empty_dirs PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_deletes_files PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_deletes_nested_dirs PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_deletes_non_empty_dirs PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_deletes_symlinks PASSED [ 23%] tests/unittests/test_util.py::TestDeleteDirContents::test_does_not_delete_dir PASSED [ 23%] tests/unittests/test_util.py::TestKeyValStrings::test_keyval_str_to_dict PASSED [ 23%] tests/unittests/test_util.py::TestGetCmdline::test_cmdline_reads_debug_env PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_bogus_parse_error_returns_default PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_bogus_scan_error_returns_default PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_nonallowed_returns_default PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_none_returns_default PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_python_unicode PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_simple PASSED [ 23%] tests/unittests/test_util.py::TestLoadYaml::test_unsafe_types PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_get_device_info_from_zpool PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_get_device_info_from_zpool_handles_no_zpool PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_get_device_info_from_zpool_no_dev_zfs PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_get_device_info_from_zpool_on_error PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_invalid_mountinfo PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_parse_mount_with_ext PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_parse_mount_with_zfs PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_precise_ext4_root PASSED [ 23%] tests/unittests/test_util.py::TestMountinfoParsing::test_raring_btrfs_root PASSED [ 23%] tests/unittests/test_util.py::TestIsX86::test_is_x86_calls_uname_for_architecture PASSED [ 23%] tests/unittests/test_util.py::TestIsX86::test_is_x86_matches_x86_types PASSED [ 23%] tests/unittests/test_util.py::TestIsX86::test_is_x86_unmatched_types PASSED [ 23%] tests/unittests/test_util.py::TestGetConfigLogfiles::test_default_log_file_present PASSED [ 23%] tests/unittests/test_util.py::TestGetConfigLogfiles::test_empty_cfg_returns_empty_list PASSED [ 23%] tests/unittests/test_util.py::TestGetConfigLogfiles::test_output_logs_parsed_when_appending PASSED [ 23%] tests/unittests/test_util.py::TestGetConfigLogfiles::test_output_logs_parsed_when_redirecting PASSED [ 23%] tests/unittests/test_util.py::TestGetConfigLogfiles::test_output_logs_parsed_when_teeing_files PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_given_log_level_used PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_log_level_defaults_to_debug PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_dont_go_to_stdout_if_console_exists PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_dont_go_to_stdout_if_fallback_to_stdout_is_false PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_go_nowhere_if_writing_to_console_fails_and_fallback_false PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_go_to_console_by_default PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_go_to_log_if_given PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_go_to_stdout_if_console_does_not_exist PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_logs_go_to_stdout_if_writing_to_console_fails_and_fallback_true PASSED [ 23%] tests/unittests/test_util.py::TestMultiLog::test_newlines_stripped_from_log_call PASSED [ 24%] tests/unittests/test_util.py::TestMultiLog::test_stderr_not_used_if_false PASSED [ 24%] tests/unittests/test_util.py::TestMultiLog::test_stderr_used_by_default PASSED [ 24%] tests/unittests/test_util.py::TestMessageFromString::test_unicode_not_messed_up PASSED [ 24%] tests/unittests/test_util.py::TestReadSeeded::test_unicode_not_messed_up PASSED [ 24%] tests/unittests/test_util.py::TestReadSeededWithoutVendorData::test_unicode_not_messed_up PASSED [ 24%] tests/unittests/test_util.py::TestEncode::test_decode_binary_plain_text_with_hex PASSED [ 24%] tests/unittests/test_util.py::TestProcessExecutionError::test_pexec_error_empty_msgs PASSED [ 24%] tests/unittests/test_util.py::TestProcessExecutionError::test_pexec_error_indent_text PASSED [ 24%] tests/unittests/test_util.py::TestProcessExecutionError::test_pexec_error_multi_line_msgs PASSED [ 24%] tests/unittests/test_util.py::TestProcessExecutionError::test_pexec_error_single_line_msgs PASSED [ 24%] tests/unittests/test_util.py::TestProcessExecutionError::test_pexec_error_type PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_bad_content_in_os_release_no_effect PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_channel_ini_with_snappy_is_snappy PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_id_in_os_release PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_id_in_os_release_quoted PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_nothing_found_is_not_snappy PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_snap_core_in_cmdline_is_snappy PASSED [ 24%] tests/unittests/test_util.py::TestSystemIsSnappy::test_system_image_config_dir_is_snappy PASSED [ 24%] tests/unittests/test_util.py::TestLoadShellContent::test_comments_handled_correctly PASSED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_all_utf8_encoded PASSED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_encoding_none_returns_bytes PASSED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_get_proc_ppid FAILED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_get_proc_ppid_mocked PASSED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_non_existing_file_returns_empty_dict PASSED [ 24%] tests/unittests/test_util.py::TestGetProcEnv::test_non_utf8_in_environment PASSED [ 24%] tests/unittests/test_util.py::TestKernelVersion::test_kernel_version[5.6.19-300.fc32.x86_64-expected0] PASSED [ 24%] tests/unittests/test_util.py::TestKernelVersion::test_kernel_version[4.15.0-101-generic-expected1] PASSED [ 24%] tests/unittests/test_util.py::TestKernelVersion::test_kernel_version[3.10.0-1062.12.1.vz7.131.10-expected2] PASSED [ 24%] tests/unittests/test_util.py::TestKernelVersion::test_kernel_version[4.18.0-144.el8.x86_64-expected3] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_openbsd PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_openbsd_with_criteria PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_freebsd[None-expected_devlist0] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_freebsd[TYPE=iso9660-expected_devlist1] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_freebsd[TYPE=vfat-expected_devlist2] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_freebsd[LABEL_FATBOOT=A_LABEL-expected_devlist3] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_netbsd[None-expected_devlist0] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_netbsd[TYPE=iso9660-expected_devlist1] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_netbsd[TYPE=vfat-expected_devlist2] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_netbsd[LABEL_FATBOOT=A_LABEL-expected_devlist3] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_dragonflybsd[None-expected_devlist0] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_dragonflybsd[TYPE=iso9660-expected_devlist1] PASSED [ 24%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_dragonflybsd[TYPE=vfat-expected_devlist2] PASSED [ 25%] tests/unittests/test_util.py::TestFindDevs::test_find_devs_with_dragonflybsd[LABEL_FATBOOT=A_LABEL-expected_devlist3] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_eq[3.1.0-3.1.0-True] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_eq[3.1.0-3.1.1-False] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_eq[3.1-3.1.0.0-False] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_gt[3.1.0-3.1.0-False] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_gt[3.1.0-3.1.1-False] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_gt[3.1-3.1.0.0-False] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_gt[3.1.0.0-3.1-True] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_gt[3.1.1-3.1.0-True] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_from_str[0.0.0.0-cls_ver0] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_from_str[1.0.0.0-cls_ver1] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_from_str[1.0.2.0-cls_ver2] PASSED [ 25%] tests/unittests/test_util.py::TestVersion::test_from_str[9.8.2.0-cls_ver3] PASSED [ 25%] tests/unittests/test_version.py::TestExportsFeatures::test_has_network_config_v1 PASSED [ 25%] tests/unittests/test_version.py::TestExportsFeatures::test_has_network_config_v2 PASSED [ 25%] tests/unittests/test_version.py::TestVersionString::test_package_version_respected PASSED [ 25%] tests/unittests/test_version.py::TestVersionString::test_package_version_skipped PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestDistroChecker::test_blank_distro PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestDistroChecker::test_freebsd_gentoo_cant_find PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestDistroChecker::test_subp_fails PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_cannot_convert_epoch_to_float PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_epoch_not_splittable PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_invalid_parameter PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_invalid_property PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_succeed_distinct PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_succeed_zero PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestSystemCtlReader::test_systemctl_works_correctly_threshold PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestAnalyzeBoot::test_boot_invalid_distro PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestAnalyzeBoot::test_container_ci_log_line PASSED [ 25%] tests/unittests/analyze/test_boot.py::TestAnalyzeBoot::test_container_no_ci_log_line PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseTimestamp::test_parse_timestamp_handles_cloud_init_default_format PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseTimestamp::test_parse_timestamp_handles_journalctl_format_adding_year PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseTimestamp::test_parse_timestamp_handles_syslog_adding_year PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseTimestamp::test_parse_unexpected_timestamp_format_with_date_command PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseCILogLine::test_parse_logline_returns_event_for_amazon_linux_2_line PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseCILogLine::test_parse_logline_returns_event_for_cloud_init_logs PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseCILogLine::test_parse_logline_returns_event_for_finish_events PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseCILogLine::test_parse_logline_returns_event_for_journalctl_logs PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestParseCILogLine::test_parse_logline_returns_none_without_separators PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestDumpEvents::test_dump_events_with_cisource PASSED [ 25%] tests/unittests/analyze/test_dump.py::TestDumpEvents::test_dump_events_with_rawdata PASSED [ 25%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_removes_logs PASSED [ 25%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_runparts_clean_d PASSED [ 25%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_preserves_logs PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_removes_unlinks_symlinks PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_removes_artifacts_skipping_seed PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_removes_artifacts_removes_seed PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_remove_artifacts_returns_one_on_errors PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_handle_clean_args_reboots PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_handle_clean_args_removed_machine_id[True] PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_handle_clean_args_removed_machine_id[False] PASSED [ 26%] tests/unittests/cmd/test_clean.py::TestClean::test_status_main PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_arg_parser_defaults PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_arg_parse_overrides PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_missing_instance_data_json PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_non_json_instance_data PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_from_cloud_name_in_instance_data PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_long_name_from_instance_data PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_lookup_from_instance_data_region PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_lookup_json_instance_data_adds_cloud_id_to_json PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_unique_exit_codes_for_status[UXAppStatus.DISABLED-2] PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_unique_exit_codes_for_status[UXAppStatus.NOT_RUN-3] PASSED [ 26%] tests/unittests/cmd/test_cloud_id.py::TestCloudId::test_cloud_id_unique_exit_codes_for_status[UXAppStatus.RUNNING-0] PASSED [ 26%] tests/unittests/cmd/test_main.py::TestMain::test_main_init_run_net_calls_set_hostname_when_metadata_present PASSED [ 26%] tests/unittests/cmd/test_main.py::TestMain::test_main_init_run_net_runs_modules PASSED [ 26%] tests/unittests/cmd/test_main.py::TestShouldBringUpInterfaces::test_should_bring_up_interfaces[True-True-False] PASSED [ 26%] tests/unittests/cmd/test_main.py::TestShouldBringUpInterfaces::test_should_bring_up_interfaces[True-False-False] PASSED [ 26%] tests/unittests/cmd/test_main.py::TestShouldBringUpInterfaces::test_should_bring_up_interfaces[False-True-False] PASSED [ 26%] tests/unittests/cmd/test_main.py::TestShouldBringUpInterfaces::test_should_bring_up_interfaces[False-False-True] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_on_missing_param PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_on_invalid_varname_paths[{"v1": {"key-2": "value-2"}}-v1.absent_leaf-instance-data 'v1' has no 'absent_leaf'\n] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_on_invalid_varname_paths[{"v1": {"key-2": "value-2"}}-absent_key-Undefined instance-data key 'absent_key'\n] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_on_missing_instance_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_when_no_read_permission_instance_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_when_no_read_permission_init_cfg[exception0] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_when_no_read_permission_init_cfg[exception1] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_error_when_no_read_permission_init_cfg[exception2] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_defaults_instance_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_fallsback_to_instance_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_processes_user_data[hi mom-hi mom-hi pops-hi pops] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_processes_user_data[ud-ud-vd-vd] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_processes_user_data[\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff+M\x01\x00\r:NY\x02\x00\x00\x00-ud-\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff+K\x01\x00\xceicr\x02\x00\x00\x00-vd0] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_processes_user_data[\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff+M\x01\x00\r:NY\x02\x00\x00\x00-ud-\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff+K\x01\x00\xceicr\x02\x00\x00\x00-vd1] PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_user_vendor_data_defaults_to_instance_link PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_root_uses_instance_sensitive_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_dumps_all_instance_data PASSED [ 26%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_returns_top_level_varname PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_returns_nested_varname[{"v1": {"key-2": "value-2"}, "my-var": "it worked"}-v1.key_2-value-2\n] PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_returns_nested_varname[{"v1": {"something-hyphenated": {"no.underscores":"x", "no-alias": "y"}}, "my-var": "it worked"}-v1.something_hyphenated-{\n "no-alias": "y",\n "no.underscores": "x"\n}\n] PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_returns_standardized_vars_to_top_level_aliases PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_list_keys_sorts_top_level_keys_when_no_varname PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_list_keys_sorts_nested_keys_when_varname PASSED [ 27%] tests/unittests/cmd/test_query.py::TestQuery::test_handle_args_list_keys_errors_when_varname_is_not_a_dict PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[false_on_sysvinit] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[true_on_disable_file] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[false_on_kernel_cmdline_enable] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[true_on_kernel_cmdline] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[true_when_generator_disables] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test__is_cloudinit_disabled[false_when_enabled_in_systemd] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_returns_not_run PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_returns_disabled_long_on_presence_of_disable_file PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[running_on_no_results_json] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[running] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[done] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[returns_done_long] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[on_errors] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[on_errors_long] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_output[running_long_format] PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_wait_blocks_until_done PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_wait_blocks_until_error PASSED [ 27%] tests/unittests/cmd/test_status.py::TestStatus::test_status_main PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestUnsupportedActions::test_unsupported_subsystem PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestUnsupportedActions::test_unsupported_udevaction PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_succcessful_add PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_successful_remove PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_update_event_disabled PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_update_metadata_failed PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_detect_hotplugged_device_not_detected_on_add PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_detect_hotplugged_device_detected_on_remove PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_apply_failed_on_add PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_apply_failed_on_remove PASSED [ 27%] tests/unittests/cmd/devel/test_hotplug_hook.py::TestHotplug::test_retry PASSED [ 27%] tests/unittests/cmd/devel/test_logs.py::TestCollectLogs::test_collect_logs_with_userdata_requires_root_user PASSED [ 27%] tests/unittests/cmd/devel/test_logs.py::TestCollectLogs::test_collect_logs_creates_tarfile PASSED [ 27%] tests/unittests/cmd/devel/test_logs.py::TestCollectLogs::test_collect_logs_includes_optional_userdata PASSED [ 27%] tests/unittests/cmd/devel/test_logs.py::TestParser::test_parser_help_has_userdata_file PASSED [ 27%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_argparse_error_on_missing_args[cmdargs0] PASSED [ 27%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_argparse_error_on_missing_args[cmdargs1] PASSED [ 27%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_argparse_error_on_missing_args[cmdargs2] PASSED [ 27%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_argparse_error_on_missing_args[cmdargs3] PASSED [ 27%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_argparse_error_on_missing_args[cmdargs4] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[netplan-outfile_content0-False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[netplan-outfile_content0-True] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[eni-outfile_content1-False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[eni-outfile_content1-True] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[networkd-outfile_content2-False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[networkd-outfile_content2-True] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[sysconfig-outfile_content3-False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[sysconfig-outfile_content3-True] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[network-manager-outfile_content4-False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_output_kind_artifacts[network-manager-outfile_content4-True] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_netplan_passthrough[False] PASSED [ 28%] tests/unittests/cmd/devel/test_net_convert.py::TestNetConvert::test_convert_netplan_passthrough[True] PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_error_on_missing_user_data PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_error_on_missing_instance_data PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_defaults_instance_data PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_root_fallback_from_sensitive_instance_data PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_root_uses_sensitive_instance_data PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_renders_instance_data_vars_in_template PASSED [ 28%] tests/unittests/cmd/devel/test_render.py::TestRender::test_handle_args_warns_and_gives_up_on_invalid_jinja_operation PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_apt_all_proxy_written PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_apt_http_proxy_written PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_apt_proxy_written PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_config_deleted PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_config_replaced PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_config_written PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_proxy_deleted PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestAptProxyConfig::test_proxy_replaced PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestConversion::test_convert_with_apt_mirror PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestConversion::test_convert_with_apt_mirror_as_empty_string PASSED [ 28%] tests/unittests/config/test_apt_conf_v1.py::TestConversion::test_no_old_content PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v1.py::TestAptSourceConfigSourceList::test_apt_v1_source_list_debian PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v1.py::TestAptSourceConfigSourceList::test_apt_v1_source_list_ubuntu PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v1.py::TestAptSourceConfigSourceList::test_apt_v1_srcl_custom PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v1.py::TestAptSourceConfigSourceList::test_apt_v1_srcl_debian_mirrorfail PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v1.py::TestAptSourceConfigSourceList::test_apt_v1_srcl_ubuntu_mirrorfail PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_source_list_centos PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_source_list_debian PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_source_list_psm PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_source_list_ubuntu PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_source_list_ubuntu_snappy PASSED [ 28%] tests/unittests/config/test_apt_configure_sources_list_v3.py::TestAptSourceConfigSourceList::test_apt_v3_srcl_custom PASSED [ 28%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_add_success PASSED [ 28%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_add_success_hardened PASSED [ 28%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_add_fail_no_file_name PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_add_fail_no_file_name_subproc PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_add_fail_no_file_name_unicode PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_list_success_human PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_list_success_machine PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_list_fail_no_keys PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_list_fail_no_keys_file PASSED [ 29%] tests/unittests/config/test_apt_key.py::TestAptKey::test_apt_key_list_fail_bad_key_file PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_basic PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_basic_dict PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_basic_dict_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_basic_nofn PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_basic_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_key PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_key_nofn PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyid PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyid_nofn PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyid_real PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyid_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyidonly PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_keyonly PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_longkeyid_ks_real PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_longkeyid_real PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_ppa PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_ppa_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_replace PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_replace_dict_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_replace_nofn PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_apt_src_replace_tri PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_convert_to_new_format PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_convert_to_new_format_collision PASSED [ 29%] tests/unittests/config/test_apt_source_v1.py::TestAptSourceConfig::test_convert_to_new_format_dict_collision PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_add_mirror_keys PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_disable_suites PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_get_def_mir_non_intel_no_arch PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_get_default_mirrors_non_intel_with_arch PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_list_rename PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_list_rename_non_slash PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_arches PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_arches_default PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_arches_sysdefault PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_default PASSED [ 29%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_search PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_search_dns PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_mirror_search_many2 PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_proxy PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_basic PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_basic_tri PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_key PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyid PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyid_keyserver PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyid_real PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyid_tri PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyidonly PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_keyonly PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_longkeyid_ks_real PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_longkeyid_real PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_ppa PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_ppa_tri PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_replace PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_replace_fn PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_src_replace_tri PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_apt_v3_url_resolvable PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestAptSourceConfig::test_disable_suites_blank_lines PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_dpkg_reconfigure_does_reconfigure PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_dpkg_reconfigure_not_done_if_no_cleaners PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_dpkg_reconfigure_not_done_on_no_data PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_no_set_sel_if_none_to_set PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_reconfigure_if_intersection PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_reconfigure_if_no_intersection PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_set_sel_appends_newline_if_absent PASSED [ 30%] tests/unittests/config/test_apt_source_v3.py::TestDebconfSelections::test_set_sel_call_has_expected_input PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[essentials] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[additional-properties] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[all-keys] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[install-type] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[require-url0] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestSetPasswordsSchema::test_schema_validation[require-url1] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_filter_args PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_required_keys[cfg0-None] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_required_keys[cfg1-None] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_required_keys[cfg2-ValueError] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_required_keys[cfg3-ValueError] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_deps_not_installed PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_deps PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_ansible_pull[cfg0-expected0] PASSED [ 30%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_ansible_pull[cfg1-expected1] PASSED [ 31%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_do_not_run PASSED [ 31%] tests/unittests/config/test_cc_ansible.py::TestAnsible::test_parse_version PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestNoConfig::test_no_config PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_edge_main_community_testing_local_repos PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_edge_main_community_testing_repos PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_empty_repo_settings PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_main_and_community_repos PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_main_community_testing_local_repos PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_main_community_testing_repos PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_no_repo_settings PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestConfig::test_only_main_repo PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config0-None] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config1-None] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config2-None] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config3-None] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config4-None] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config5-apk_repos.alpine_repo.version: False is not of type 'string'] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config6-apk_repos\\.alpine_repo:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('bogus'\\ was\\ unexpected\\)] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config7-apk_repos.alpine_repo: 'version' is a required property, apk_repos.alpine_repo: {} does not have enough properties] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config8-apk_repos.alpine_repo: True is not of type 'object', 'null'] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config9-apk_repos.preserve_repositories: 'wrongtype' is not of type 'boolean'] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config10-apk_repos: {} does not have enough properties] PASSED [ 31%] tests/unittests/config/test_cc_apk_configure.py::TestApkConfigureSchema::test_schema_validation[config11-apk_repos.local_repo_base_url: None is not of type 'string'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config0-None] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config1-apt: 'nonobject' is not of type 'object] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config2-apt:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('boguskey'\\ was\\ unexpected\\)] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config3-apt: {} does not have enough properties] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config4-apt.preserve_sources_list: 1 is not of type 'boolean'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config5-apt.disable_suites: 1 is not of type 'array'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config6-apt\\.disable_suites:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config7-apt.disable_suites.0: 1 is not of type 'string'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config8-apt\\.disable_suites:\\ \\['a',\\ 'a'\\]\\ has\\ non\\-unique\\ elements] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config9-apt.primary: 'nonlist' is not of type 'array'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config10-apt\\.primary:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config11-apt.primary.0: 'nonobj' is not of type 'object'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config12-apt.primary.0: 'arches' is a required property] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config13-apt\\.primary\\.0:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('boguskey'\\ was\\ unexpected\\)] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config14-apt.primary.0.arches: True is not of type 'array'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config15-apt.primary.0.uri: True is not of type 'string'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config16-apt.primary.0.search: 'non-array' is not of type 'array'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config17-apt\\.primary\\.0\\.search:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config18-apt.primary.0.search_dns: 'a' is not of type 'boolean'] PASSED [ 31%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config19-apt.primary.0.keyid: 1 is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config20-apt.primary.0.key: 1 is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config21-apt.primary.0.keyserver: 1 is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config22-apt.add_apt_repo_match: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config23-apt.debconf_selections: True is not of type 'object'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config24-apt.debconf_selections: {} does not have enough properties] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config25-apt.sources_list: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config26-apt.conf: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config27-apt.http_proxy: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config28-apt.https_proxy: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config29-apt.proxy: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config30-apt.ftp_proxy: True is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config31-apt.sources: True is not of type 'object'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config32-apt.sources.opaquekey: True is not of type 'object'] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config33-apt.sources.opaquekey: {} does not have enough properties] PASSED [ 32%] tests/unittests/config/test_cc_apt_configure.py::TestAPTConfigureSchema::test_schema_validation[config34-apt\\.sources\\.opaquekey:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('boguskey'\\ was\\ unexpected\\)] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_not_disabled_by_default PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_false_disables_pipelining PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config0-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config1-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config2-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config3-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config4-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config5-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config6-None] PASSED [ 32%] tests/unittests/config/test_cc_apt_pipelining.py::TestAptPipelining::test_schema_validation[config7-Cloud config schema errors: apt_pipelining: 'bogus' is not valid under any of the given schema] PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootcmd::test_handler_creates_and_runs_bootcmd_script_with_instance_id PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootcmd::test_handler_invalid_command_set PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootcmd::test_handler_runs_bootcmd_script_with_error PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootcmd::test_handler_skip_if_no_bootcmd PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootCMDSchema::test_schema_validation[config0-Cloud config schema errors: bootcmd: 1 is not of type 'array'] PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootCMDSchema::test_schema_validation[config1-bootcmd:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootCMDSchema::test_schema_validation[config2-Cloud\\ config\\ schema\\ errors:\\ bootcmd:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 32%] tests/unittests/config/test_cc_bootcmd.py::TestBootCMDSchema::test_schema_validation[config3-Cloud config schema errors: bootcmd.1: 20 is not valid under any of the given schemas, bootcmd.3: {'a': 'n'} is not valid under any of the given schemas] PASSED [ 32%] tests/unittests/config/test_cc_byobu.py::TestByobuSchema::test_schema_validation[config0-None] PASSED [ 32%] tests/unittests/config/test_cc_byobu.py::TestByobuSchema::test_schema_validation[config1-byobu_by_default: 1 is not of type 'string'] PASSED [ 32%] tests/unittests/config/test_cc_byobu.py::TestByobuSchema::test_schema_validation[config2-byobu_by_default:\\ 'bogusenum'\\ is\\ not\\ one\\ of\\ \\['enable\\-system',\\ 'enable\\-user',\\ 'disable\\-system',\\ 'disable\\-user',\\ 'enable',\\ 'disable',\\ 'user',\\ 'system'\\]] PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestNoConfig::test_no_config PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_correct_order_for_remove_then_add PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_empty_trusted_list PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_multiple_trusted PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_no_remove_defaults_if_false PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_no_trusted_list PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_remove_default_ca_certs PASSED [ 32%] tests/unittests/config/test_cc_ca_certs.py::TestConfig::test_single_trusted PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestAddCaCerts::test_multiple_certs PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestAddCaCerts::test_no_certs_in_list PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestAddCaCerts::test_single_cert_no_trailing_cr PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestAddCaCerts::test_single_cert_to_empty_existing_ca_file PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestAddCaCerts::test_single_cert_trailing_cr PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestUpdateCaCerts::test_commands PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestRemoveDefaultCaCerts::test_commands PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config0-Cloud config schema deprecations: ca-certs: DEPRECATED. Dropped after April 2027. Use ``ca_certs``., ca-certs.remove-defaults: DEPRECATED. Dropped after April 2027. Use ``remove_defaults``.] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config1-ca_certs: 1 is not of type 'object'] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config2-ca_certs:\\ \\{\\}\\ does\\ not\\ have\\ enough\\ properties] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config3-ca_certs:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('boguskey'\\ was\\ unexpected\\)] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config4-ca_certs.remove_defaults: 1 is not of type 'boolean'] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config5-ca_certs.trusted.0: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_schema_validation[config6-ca_certs\\.trusted:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_deprecate_key_warnings PASSED [ 33%] tests/unittests/config/test_cc_ca_certs.py::TestCACertsSchema::test_duplicate_keys PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestInstallChefOmnibus::test_install_chef_from_omnibus_has_omnibus_version PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestInstallChefOmnibus::test_install_chef_from_omnibus_retries_url PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestInstallChefOmnibus::test_install_chef_from_omnibus_runs_chef_url_content PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_basic_config PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_firstboot_json PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_no_config PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_template_deletes PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_validation_cert_and_validation_key PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestChef::test_validation_cert_with_system PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config0-chef: 1 is not of type 'object'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config1-\\ chef:\\ \\{\\}\\ does\\ not\\ have\\ enough\\ properties] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config2-chef:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('boguskey'\\ was\\ unexpected\\)] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config3-chef.directories: 1 is not of type 'array'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config4-chef\\.directories:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config5-chef.directories.0: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config6-chef\\.directories:\\ \\['a',\\ 'a'\\]\\ has\\ non\\-unique\\ elements] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config7-chef.validation_cert: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config8-chef.validation_key: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config9-chef.firstboot_path: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config10-chef.client_key: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config11-chef.encrypted_data_bag_secret: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config12-chef.environment: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config13-chef.file_backup_path: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config14-chef.file_cache_path: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config15-chef.json_attribs: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config16-chef.log_level: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config17-chef.log_location: 1 is not of type 'string'] PASSED [ 33%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config18-chef.node_name: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config19-chef.omnibus_url: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config20-chef.omnibus_url_retries: 'one' is not of type 'integer'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config21-chef.omnibus_version: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config22-chef.omnibus_version: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config23-chef.pid_file: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config24-chef.server_url: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config25-chef.show_time: 1 is not of type 'boolean'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config26-chef.ssl_verify_mode: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config27-chef.validation_name: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config28-chef.force_install: 1 is not of type 'boolean'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config29-chef.initial_attributes: 1 is not of type 'object'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config30-chef.install_type: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config31-chef\\.install_type:\\ 'bogusenum'\\ is\\ not\\ one\\ of\\ \\['packages',\\ 'gems',\\ 'omnibus'\\]] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config32-chef.run_list: 1 is not of type 'array'] PASSED [ 34%] tests/unittests/config/test_cc_chef.py::TestBootCMDSchema::test_schema_validation[config33-chef.chef_license: 1 is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_disable_ec2_metadata.py::TestEC2MetadataRoute::test_disable_ifconfig PASSED [ 34%] tests/unittests/config/test_cc_disable_ec2_metadata.py::TestEC2MetadataRoute::test_disable_ip PASSED [ 34%] tests/unittests/config/test_cc_disable_ec2_metadata.py::TestEC2MetadataRoute::test_disable_no_tool PASSED [ 34%] tests/unittests/config/test_cc_disable_ec2_metadata.py::TestDisableEc2MetadataSchema::test_schema_validation[config0-disable_ec2_metadata: 1 is not of type 'boolean'] PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestIsDiskUsed::test_multiple_child_nodes_returns_true PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestIsDiskUsed::test_one_child_nodes_and_no_fs_returns_false PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestIsDiskUsed::test_valid_filesystem_returns_true PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetMbrHddSize::test_size_for_1024_byte_sectors PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetMbrHddSize::test_size_for_2048_byte_sectors PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetMbrHddSize::test_size_for_4096_byte_sectors PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetMbrHddSize::test_size_for_512_byte_sectors PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetPartitionMbrLayout::test_half_and_half PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetPartitionMbrLayout::test_single_partition_using_boolean PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetPartitionMbrLayout::test_single_partition_using_list PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestGetPartitionMbrLayout::test_thirds_with_different_partition_type PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestUpdateFsSetupDevices::test_dotted_devname PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestUpdateFsSetupDevices::test_dotted_devname_populates_partition PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestUpdateFsSetupDevices::test_regression_1634678 PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestMkfsCommandHandling::test_mkswap PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestMkfsCommandHandling::test_overwrite_and_extra_opts_without_cmd PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestMkfsCommandHandling::test_with_cmd PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestDebugSchema::test_schema_validation[config0-disk_setup: 1 is not of type 'object'] PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestDebugSchema::test_schema_validation[config1-fs_setup: 1 is not of type 'array'] PASSED [ 34%] tests/unittests/config/test_cc_disk_setup.py::TestDebugSchema::test_schema_validation[config2-device_aliases: 1 is not of type 'object'] PASSED [ 34%] tests/unittests/config/test_cc_fan.py::TestFanSchema::test_schema_validation[config0-is not of type 'string'] PASSED [ 34%] tests/unittests/config/test_cc_fan.py::TestFanSchema::test_schema_validation[config1-'config' is a required property] PASSED [ 34%] tests/unittests/config/test_cc_final_message.py::TestHandle::test_boot_finished_written[True-True-None] PASSED [ 34%] tests/unittests/config/test_cc_final_message.py::TestHandle::test_boot_finished_written[False-False-Failed to write boot finished file ] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestDisabled::test_mode_off PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_force_lang_check_tempfile PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_handle_with_no_growpart_entry PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_mode_auto_falls_back_to_gpart PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_mode_auto_prefers_growpart PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_no_resizers_auto_is_fine PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestConfig::test_no_resizers_mode_growpart_is_exception PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestResize::test_simple_devices PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_resize_when_encrypted PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_resize_when_unencrypted PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_encrypted_but_cryptsetup_not_found PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_dmsetup_not_found PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_unparsable_dmsetup PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_missing_keydata PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_resize_failed PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestEncrypted::test_resize_skipped PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config0-expectation0] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config1-expectation1] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config2-expectation2] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config3-expectation3] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config4-expectation4] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config5-expectation5] PASSED [ 35%] tests/unittests/config/test_cc_growpart.py::TestGrowpartSchema::test_schema_validation[config6-expectation6] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output0-False-expected_log_call0--] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output1-False-expected_log_call1--] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output2-True-None-udevadm_output2-/dev/vda] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output3-True-None--/dev/xvda] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output4-True-None-udevadm_output4-/dev/disk/by-id/nvme-Company_hash000] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestFetchIdevs::test_fetch_idevs[grub_output5-True-None-udevadm_output5-/dev/disk/by-id/company-user-1] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestHandle::test_handle[None-None-/dev/disk/by-id/nvme-Company_hash000-expected_log_output0] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestHandle::test_handle[/dev/sda-None-/dev/sda-expected_log_output1] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestHandle::test_handle[None-true-/dev/xvda-expected_log_output2] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestHandle::test_handle[/dev/vda-False-/dev/disk/by-id/company-user-1-expected_log_output3] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestHandle::test_handle[/dev/nvme0n1-True--expected_log_output4] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestGrubDpkgSchema::test_schema_validation[config0-expectation0-None] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestGrubDpkgSchema::test_schema_validation[config1-expectation1-False] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestGrubDpkgSchema::test_schema_validation[config2-expectation2-True] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestGrubDpkgSchema::test_schema_validation[config3-expectation3-True] PASSED [ 35%] tests/unittests/config/test_cc_grub_dpkg.py::TestGrubDpkgSchema::test_schema_validation[config4-expectation4-False] PASSED [ 35%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_installed_when_supported_and_enabled[True] PASSED [ 35%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_installed_when_supported_and_enabled[False] PASSED [ 35%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_not_installed_when_unsupported PASSED [ 35%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_not_installed_when_disabled PASSED [ 35%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_uninstalled_when_disabled PASSED [ 36%] tests/unittests/config/test_cc_install_hotplug.py::TestInstallHotplug::test_rules_not_installed_when_no_udevadm PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config0-None] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config1-Cloud config schema errors: keyboard: 'layout' is a required property] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config2-Cloud config schema errors: keyboard: 'bogus' is not of type 'object'] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config3-Cloud config schema errors: keyboard.layout: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config4-Cloud config schema errors: keyboard.model: None is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config5-Cloud\\ config\\ schema\\ errors:\\ keyboard\\.variant:\\ \\[1\\]\\ is\\ not\\ of\\ type\\ 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config6-Cloud config schema errors: keyboard.options: {} is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keyboard.py::TestKeyboard::test_schema_validation[config7-Cloud\\ config\\ schema\\ errors:\\ keyboard:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('extraprop'\\ was\\ unexpected\\)] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestHandle::test_emit_keys_to_console_config[cfg0-True] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestHandle::test_emit_keys_to_console_config[cfg1-True] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestHandle::test_emit_keys_to_console_config[cfg2-True] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestHandle::test_emit_keys_to_console_config[cfg3-False] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config0-Cloud config schema errors: ssh: 'emit_keys_to_console' is a required property] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config1-Cloud config schema errors: ssh.emit_keys_to_console: 'false' is not of type 'boolean'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config2-Cloud\\ config\\ schema\\ errors:\\ ssh:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('noextraprop'\\ was\\ unexpected\\)] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config3-Cloud config schema errors: ssh.emit_keys_to_console: 'false' is not of type 'boolean'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config4-Cloud config schema errors: ssh_key_console_blacklist: False is not of type 'array'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config5-Cloud config schema errors: ssh_key_console_blacklist.0: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config6-Cloud config schema errors: ssh_key_console_blacklist.0: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config7-Cloud config schema errors: ssh_fp_console_blacklist: None is not of type 'array'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config8-Cloud config schema errors: ssh_fp_console_blacklist.0: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_keys_to_console.py::TestKeysToConsoleSchema::test_schema_validation[config9-Cloud config schema errors: ssh_fp_console_blacklist.0: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_error_on_invalid_landscape_type PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_installs_client_and_creates_config_file PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_restarts_landscape_client PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_skips_empty_landscape_cloudconfig PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_writes_merged_client_config_file_with_defaults PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscape::test_handler_writes_merged_provided_cloudconfig_with_defaults PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config0-None] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config1-None] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config2-None] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config3-Additional properties are not allowed] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config4-'client' is a required property] PASSED [ 36%] tests/unittests/config/test_cc_landscape.py::TestLandscapeSchema::test_schema_validation[config5-'1, 2,3' does not match] PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocale::test_locale_rhel_defaults_en_us_utf8 PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocale::test_locale_update_config_if_different_than_default PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocale::test_set_locale_arch PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocale::test_set_locale_sles PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocale::test_set_locale_sles_default PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocaleSchema::test_schema_validation[config0-locale: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_locale.py::TestLocaleSchema::test_schema_validation[config1-locale_configfile: 1 is not of type 'string'] PASSED [ 36%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_cmd_existing PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_cmd_new_full PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_cmd_new_partial PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_cmd_none PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_debconf_existing PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_debconf_new_full PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_debconf_new_partial PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_debconf_none PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_init PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_install PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_lxd_package_install PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_no_init_does_nothing PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxd::test_no_lxd_does_nothing PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxdMaybeCleanupDefault::test_device_removed_if_attach_true PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxdMaybeCleanupDefault::test_did_init_false_does_not_delete PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxdMaybeCleanupDefault::test_network_deleted_if_create_true PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLxdMaybeCleanupDefault::test_network_other_than_default_not_deleted PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config0-Additional properties are not allowed] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config1-not\\ one\\ of\\ \\['zfs',\\ 'dir',\\ 'lvm',\\ 'btrfs'\\]] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config2-None] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config3-None] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config4-None] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config5-bridge: 'mode' is a required property] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config6-does not have enough properties] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config7-None] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config8-None] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config9-Additional properties are not allowed] PASSED [ 37%] tests/unittests/config/test_cc_lxd.py::TestLXDSchema::test_schema_validation[config10-Additional properties are not allowed] PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestConfig::test_basic_config PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestConfig::test_certificats_written PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestConfig::test_existing_config_is_saved PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestConfig::test_existing_updated PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestHandler::test_mcollective_install PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestMcollectiveSchema::test_schema_validation[config0-mcollective: Additional properties are not allowed] PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestMcollectiveSchema::test_schema_validation[config1-None] PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestMcollectiveSchema::test_schema_validation[config2-does not match any of the regexes:] PASSED [ 37%] tests/unittests/config/test_cc_mcollective.py::TestMcollectiveSchema::test_schema_validation[config3-mcollective.conf.public-cert: 1 is not of type 'string'] PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_device_aliases_remapping PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_disk_but_missing_partition_returns_none PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_disk_name_returns_full_path PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_full_disk_path_is_returned PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_meta_disk_is_returned PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_meta_partition_is_returned PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_existent_meta_partition_with_p_is_returned PASSED [ 37%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_first_partition_returned_if_existent_disk_is_partitioned PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_missing_device_returns_none PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_missing_sys_returns_none PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_network_device_returns_network_device PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_nth_partition_returned_if_requested PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSanitizeDevname::test_transformer_returning_none_returns_none PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSwapFileCreation::test_swap_creation_method_btrfs PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSwapFileCreation::test_swap_creation_method_ext4 PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSwapFileCreation::test_swap_creation_method_fallocate_on_xfs PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestSwapFileCreation::test_swap_creation_method_xfs PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_fstab_alternate_swap_device_already_configured PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_fstab_no_swap_device PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_fstab_same_swap_device_already_configured PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_no_change_fstab_sets_needs_mount_all PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_no_fstab PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestFstabHandling::test_swap_integrity PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_happy_path[xfs] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_happy_path[btrfs] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_happy_path[ext4] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_happy_path[other] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_fallback_from_fallocate_to_dd PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[268435456-268435456] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[536870912-536870912] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[1073741824-1073741824] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[2147483648-2147483648] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[4294967296-4294967296] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[8589934592-4294967296] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[17179869184-4294967296] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[34359738368-6442450944] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[68719476736-8589934592] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[137438953472-11811160064] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[274877906944-17179869184] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestCreateSwapfile::test_suggested_swapsize[549755813888-24696061952] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config0-mounts:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config1-mounts\\.0:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config2-mounts.0:.* is too long] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config3-mount_default_fields:.* is too short] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config4-mount_default_fields:.* is too long] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config5-Additional\\ properties\\ are\\ not\\ allowed\\ \\('invalidprop'] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config6-None] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config7-None] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config8-None] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config9-None] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config10-swap.size:] PASSED [ 38%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config11-swap.maxsize: '1.5MT' is not valid] PASSED [ 39%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config12-swap.maxsize: '..5T' is not valid] PASSED [ 39%] tests/unittests/config/test_cc_mounts.py::TestMountsSchema::test_schema_validation[config13-swap.size: 'K' is not valid] PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_defaults_pools_empty_lists_sles PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_distro_ntp_client_configs PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_no_ntpcfg_does_nothing PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_custom_client_overrides_installed_clients PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_distro_searches_all_preferred_clients PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_handler_enabled_false PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_handler_real_distro_ntp_templates PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_handler_schema_validation_allows_empty_ntp_config PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_handler_timesyncd PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_install PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_install_no_op_with_empty_pkg_list PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_install_not_needed PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_rename_ntp_conf PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_rename_ntp_conf_skip_missing PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_system_config_overrides_distro_builtin_clients PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_the_whole_package PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_user_config_overrides_system_cfg PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_user_provided_config_template_only PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_ntp_user_provided_config_with_template PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_opensuse_picks_chrony PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_snappy_system_picks_timesyncd PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_timesyncd_template PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_user_cfg_ntp_client_auto_uses_distro_clients PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_write_ntp_config_template_defaults_pools_w_empty_lists PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNtp::test_write_ntp_config_template_uses_ntp_conf_distro_no_servers PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestSupplementalSchemaValidation::test_error_on_missing_keys PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestSupplementalSchemaValidation::test_error_on_non_list_values PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestSupplementalSchemaValidation::test_error_on_non_string_values PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestSupplementalSchemaValidation::test_error_requiring_either_template_or_template_name PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNTPSchema::test_schema_validation[config0-None] PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNTPSchema::test_schema_validation[config1-ntp:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('invalidkey'] PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNTPSchema::test_schema_validation[config2-ntp\\.pools:\\ \\['0\\.mypool\\.org',\\ '0\\.mypool\\.org'\\]\\ has\\ non\\-unique\\ elements] PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNTPSchema::test_schema_validation[config3-ntp.pools.0: 123 is not of type 'string'.*ntp.servers.1: None is not of type 'string'] PASSED [ 39%] tests/unittests/config/test_cc_ntp.py::TestNTPSchema::test_schema_validation[config4-ntp.pools: 123 is not of type 'array'.*ntp.servers: 'non-array' is not of type 'array'] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config0-] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config1-] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config2-is too short] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config3-deprecations: apt_update: DEPRECATED. Dropped after April 2027. Use ``package_update``. Default: ``false``] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config4-deprecations: apt_upgrade: DEPRECATED. Dropped after April 2027. Use ``package_upgrade``. Default: ``false``] PASSED [ 39%] tests/unittests/config/test_cc_package_update_upgrade_install.py::TestPackageUpdateUpgradeSchema::test_schema_validation[config5-deprecations: apt_reboot_if_required: DEPRECATED. Dropped after April 2027. Use ``package_reboot_if_required``. Default: ``false``] PASSED [ 39%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_default_call PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_no_url PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[-1--2] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[0--1] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[1-0] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[2-10] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[2-11] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[two-9] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[None-9] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_tries[tries7-9] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_post_all PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_custom_post_list PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHome::test_invalid_post PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHomeSchema::test_schema_validation[config0] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHomeSchema::test_schema_validation[config1] PASSED [ 40%] tests/unittests/config/test_cc_phone_home.py::TestPhoneHomeSchema::test_schema_validation[config2] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_alpine_delay PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_condition_default_is_true PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_condition_null_raises PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_empty_mode PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_freebsd_poweroff_uses_lowercase_p PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_invalid_delay PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_invalid_mode PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_irrelevant_config PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_message_present PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_no_config PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_no_message PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_valid_delay PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestLoadPowerState::test_valid_modes PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestCheckCondition::test_cmd_exit_nonzero_warns PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestCheckCondition::test_cmd_exit_one_false PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestCheckCondition::test_cmd_exit_zero_true PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestCheckCondition::test_false_is_false PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestCheckCondition::test_true_is_true PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config0-'test' is not one of \\['poweroff', 'reboot', 'halt'\\]] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config1-power_state.delay: DEPRECATED: Use of string for this value will be dropped after April 2027. Use ``now`` or integer type.] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config2-None] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config3-power_state.delay: DEPRECATED: Use of string for this value will be dropped after April 2027. Use ``now`` or integer type.] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config4-] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config5-] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config6-] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config7-] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config8-None] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config9-None] PASSED [ 40%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config10-None] PASSED [ 41%] tests/unittests/config/test_cc_power_state_change.py::TestPowerStateChangeSchema::test_schema_validation[config11-] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestAutostartPuppet::test_wb_autostart_puppet_updates_puppet_default PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestAutostartPuppet::test_wb_autostart_pupppet_enables_puppet_chkconfig PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestAutostartPuppet::test_wb_autostart_pupppet_enables_puppet_systemctl PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_empty_puppet_config_installs_puppet PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_aio PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_aio_with_collection PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_aio_with_custom_url PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_aio_with_version PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_aio_without_cleanup PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_on_true PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_installs_puppet_version PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_starts_puppet_service PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_config_updates_puppet_conf PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_runs_puppet_if_requested PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_runs_puppet_with_args_list_if_requested PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_runs_puppet_with_args_string_if_requested PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_skips_puppetd PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_starts_puppetd PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_puppet_writes_csr_attributes_file PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetHandle::test_skips_missing_puppet_key_in_cloudconfig PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestInstallPuppetAio::test_install_with_collection PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestInstallPuppetAio::test_install_with_custom_url PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestInstallPuppetAio::test_install_with_default_arguments PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestInstallPuppetAio::test_install_with_no_cleanup PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestInstallPuppetAio::test_install_with_version PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config0-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config1-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config2-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config3-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config4-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config5-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config6-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config7-None] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config8-'package' is not one of \\['packages', 'aio'\\]] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config9-'test' was unexpected] PASSED [ 41%] tests/unittests/config/test_cc_puppet.py::TestPuppetSchema::test_schema_validation[config10-'test' was unexpected] PASSED [ 41%] tests/unittests/config/test_cc_refresh_rmc_and_interface.py::TestRsctNodeFile::test_disable_ipv6_interface PASSED [ 41%] tests/unittests/config/test_cc_refresh_rmc_and_interface.py::TestRsctNodeFile::test_find_ipv6 PASSED [ 41%] tests/unittests/config/test_cc_refresh_rmc_and_interface.py::TestRsctNodeFile::test_handle PASSED [ 41%] tests/unittests/config/test_cc_refresh_rmc_and_interface.py::TestRsctNodeFile::test_refresh_ipv6 PASSED [ 41%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_can_skip_resize_ext PASSED [ 41%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_cannot_skip_ufs_growfs_exception PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_cannot_skip_ufs_resize PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_handle_modern_zfsroot PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_handle_noops_on_disabled PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_handle_warns_on_undiscoverable_root_path_in_commandline PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_handle_warns_on_unknown_mount_info PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_handle_zfs_root PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_resize_ext_cmd_return PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_resize_ufs_cmd_return PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_resize_xfs_cmd_return PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_resize_zfs_cmd_return PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefs::test_skip_ufs_resize PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestRootDevFromCmdline::test_rootdev_from_cmdline_with_no_root PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestRootDevFromCmdline::test_rootdev_from_cmdline_with_root_startswith_dev PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestRootDevFromCmdline::test_rootdev_from_cmdline_with_root_with_label PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestRootDevFromCmdline::test_rootdev_from_cmdline_with_root_with_uuid PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestRootDevFromCmdline::test_rootdev_from_cmdline_with_root_without_dev_prefix PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_does_not_exist PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_does_not_exist_in_container PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_non_block PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_non_block_on_container PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_none_on_overlayroot PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_raises_oserror PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_returns_cmdline_root PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_warns_missing_cmdline_root PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_maybe_get_writable_device_path_zfs_freebsd PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_resize_btrfs_mount_is_ro PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestMaybeGetDevicePathAsWritableBlock::test_resize_btrfs_mount_is_rw PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefsSchema::test_schema_validation[config0-None] PASSED [ 42%] tests/unittests/config/test_cc_resizefs.py::TestResizefsSchema::test_schema_validation[config1-'wrong' is not one of \\[True, False, 'noblock'\\]] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConf::test_resolv_conf_etc_resolv_conf PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConf::test_resolv_conf_invalid_resolve_conf_fn PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConf::test_resolv_conf_manage_resolv_conf_false PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConf::test_resolv_conf_no_param PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConf::test_resolv_conf_systemd_resolved PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_dist_resolv_conf_fn PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_target_fname_is_used_if_passed PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params0-None] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params1-options foo] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params2-None] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params3-options foo:some_value] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params4-options bar foo:some_value] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params5-options bar:other_value foo:some_value] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestGenerateResolvConf::test_flags_and_options[params6-options spam bar:other_value foo:some_value] PASSED [ 42%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config0-None] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config1-None] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config2-'asdf' is not of type 'boolean'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config3-Additional properties are not allowed] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config4-'1.1.1.1' is not of type 'array'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config5-Additional properties are not allowed] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config6-'foo.com' is not of type 'array'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config7-\\['foo.com'\\] is not of type 'string'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config8-'1.2.3.4' is not of type 'array'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config9-'timeout: 1' is not of type 'object'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config10-'rotate' is not of type 'object'] PASSED [ 43%] tests/unittests/config/test_cc_resolv_conf.py::TestResolvConfSchema::test_schema_validation[config11-\\['rotate'\\] is not of type 'object'] PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::GoodTests::test_already_registered PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::GoodTests::test_full_registration PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::GoodTests::test_simple_registration PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::GoodTests::test_update_repos_disable_with_none PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_bad_key_value PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_no_org PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_no_password PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_pool_not_a_list PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_repo_not_a_list PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestBadInput::test_service_level_without_auto PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestRhSubscriptionSchema::test_schema_validation[config0-Additional properties are not allowed] PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestRhSubscriptionSchema::test_schema_validation[config1-1 is not of type 'string'] PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestRhSubscriptionSchema::test_schema_validation[config2-'name' is not of type 'array'] PASSED [ 43%] tests/unittests/config/test_cc_rh_subscription.py::TestRhSubscriptionSchema::test_schema_validation[config3-'name' is not of type 'array'] PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestLoadConfig::test_legacy_defaults PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestLoadConfig::test_legacy_full PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestLoadConfig::test_new_configs PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestLoadConfig::test_new_defaults PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestApplyChanges::test_multiline_content PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestApplyChanges::test_multiple_files PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestApplyChanges::test_repeat_def PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestApplyChanges::test_simple PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_invalid_multiple_colon PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_invalid_port PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_name_in_string PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_valid_ipv6 PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_valid_ipv6_with_port PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestParseRemotesLine::test_valid_port PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestRemotesToSyslog::test_header_footer PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestRemotesToSyslog::test_simple PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestRemotesToSyslog::test_with_empty_or_null PASSED [ 43%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config0-None] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config1-Additional properties are not allowed] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config2-] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config3-] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config4-\\['a'\\] is not of type 'object'] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config5-'a' is not of type 'object] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestRsyslogSchema::test_schema_validation[config6-] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestInvalidKeyType::test_invalid_key_types[config0-Invalid type for key `configs`. Expected type(s): . Current type: ] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestInvalidKeyType::test_invalid_key_types[config1-Invalid type for key `config_dir`. Expected type(s): . Current type: ] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestInvalidKeyType::test_invalid_key_types[config2-Invalid type for key `config_filename`. Expected type(s): . Current type: ] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestInvalidKeyType::test_invalid_key_types[config3-Invalid type for key `service_reload_command`. Expected type(s): (, ). Current type: ] PASSED [ 44%] tests/unittests/config/test_cc_rsyslog.py::TestInvalidKeyType::test_invalid_key_types[config4-Invalid type for key `remotes`. Expected type(s): . Current type: ] PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRuncmd::test_handler_invalid_command_set PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRuncmd::test_handler_skip_if_no_runcmd PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRuncmd::test_handler_write_valid_runcmd_schema_to_file PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRuncmd::test_runcmd_shellify_fails PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRunCmdSchema::test_schema_validation[config0-None] PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRunCmdSchema::test_schema_validation[config1-None] PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRunCmdSchema::test_schema_validation[config2-1 is not of type 'array'] PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRunCmdSchema::test_schema_validation[config3-runcmd: \\[\\] is too short] PASSED [ 44%] tests/unittests/config/test_cc_runcmd.py::TestRunCmdSchema::test_schema_validation[config4-] PASSED [ 44%] tests/unittests/config/test_cc_scripts_vendor.py::TestScriptsVendorSchema::test_schema_validation[config0-expectation0] PASSED [ 44%] tests/unittests/config/test_cc_scripts_vendor.py::TestScriptsVendorSchema::test_schema_validation[config1-expectation1] PASSED [ 44%] tests/unittests/config/test_cc_scripts_vendor.py::TestScriptsVendorSchema::test_schema_validation[config2-expectation2] PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_b64 PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_base64 PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_gz PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_gzip PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_metadata PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_append_random_unknown_encoding PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_file_in_environment_for_command PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_seed_command_and_required PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_seed_command_not_provided PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_seed_command_provided_and_available PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestRandomSeed::test_unavailable_seed_command_and_required_raises_error PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestSeedRandomSchema::test_schema_validation[config0-'bad' is not one of \\['raw', 'base64', 'b64', 'gzip', 'gz'\\]] PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestSeedRandomSchema::test_schema_validation[config1-'foo' is not of type 'array'] PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestSeedRandomSchema::test_schema_validation[config2-'true' is not of type 'boolean'] PASSED [ 44%] tests/unittests/config/test_cc_seed_random.py::TestSeedRandomSchema::test_schema_validation[config3-Additional properties are not allowed] PASSED [ 44%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_debian_write_hostname_prefer_fqdn PASSED [ 44%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_error_on_distro_set_hostname_errors PASSED [ 44%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_localhost_default_hostname PASSED [ 44%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_localhost_user_given_hostname PASSED [ 44%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_multiple_calls_skips_unchanged_hostname PASSED [ 45%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_photon_hostname PASSED [ 45%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_rhel_write_hostname_prefer_hostname PASSED [ 45%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_write_hostname_debian PASSED [ 45%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_write_hostname_rhel PASSED [ 45%] tests/unittests/config/test_cc_set_hostname.py::TestHostname::test_write_hostname_sles PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_unknown_value_logs_warning[True-cmd0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_unknown_value_logs_warning[False-cmd1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_restart_ssh_only_when_changes_made_and_ssh_installed[True-True-cmd0-Restarted the SSH daemon.] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_restart_ssh_only_when_changes_made_and_ssh_installed[True-False-cmd1-No need to restart SSH] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_restart_ssh_only_when_changes_made_and_ssh_installed[False-True-cmd2-Restarted the SSH daemon.] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_restart_ssh_only_when_changes_made_and_ssh_installed[False-False-cmd3-No need to restart SSH] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_unchanged_value_does_nothing PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_valid_value_changes_updates_ssh PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[True-raised_error0-None-debug_logs0-1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[True-raised_error1-Ignoring config 'ssh_pwauth: True'. SSH service 'ssh' is not installed.-debug_logs1-0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[True-raised_error2-Ignoring config 'ssh_pwauth: True'. SSH service 'ssh' is not available. Error: -debug_logs2-0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[False-raised_error3-None-debug_logs3-1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[False-raised_error4-None-debug_logs4-1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestHandleSSHPwauth::test_no_restart_when_service_is_not_running[False-raised_error5-None-debug_logs5-1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_handle_on_empty_config PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_handle_on_chpasswd_list_parses_common_hashes PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_handle_on_chpasswd_users_parses_common_hashes PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_bsd_calls_custom_pw_cmds_to_set_and_expire_passwords[user_cfg0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_bsd_calls_custom_pw_cmds_to_set_and_expire_passwords[user_cfg1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_random_passwords[user_cfg0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_random_passwords[user_cfg1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_chpasswd_parity[list_def0-users_def0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_chpasswd_parity[list_def1-users_def1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsHandle::test_chpasswd_parity[list_def2-users_def2] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire[cfg0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire[cfg1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire[cfg2] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire[cfg3] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire_old_behavior[cfg0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire_old_behavior[cfg1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire_old_behavior[cfg2] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestExpire::test_expire_old_behavior[cfg3] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config0-expectation0] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config1-expectation1] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config2-expectation2] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config3-expectation3] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config4-expectation4] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config5-expectation5] PASSED [ 45%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config6-expectation6] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config7-expectation7] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config8-expectation8] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config9-expectation9] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[dat_is_an_additional_property] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config11-expectation11] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config12-expectation12] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config13-expectation13] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config14-expectation14] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config15-expectation15] PASSED [ 46%] tests/unittests/config/test_cc_set_passwords.py::TestSetPasswordsSchema::test_schema_validation[config16-expectation16] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestAddAssertions::test_add_assertions_on_empty_list PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestAddAssertions::test_add_assertions_on_non_list_or_dict PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestAddAssertions::test_add_assertions_adds_assertions_as_list PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestAddAssertions::test_add_assertions_adds_assertions_as_dict PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestRunCommands::test_run_command_as_lists PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestRunCommands::test_run_command_dict_sorted_as_command_script PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestRunCommands::test_run_command_logs_commands_and_exit_codes_to_stderr PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestRunCommands::test_run_commands_on_empty_list PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestRunCommands::test_run_commands_on_non_list_or_dict PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config0-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config1-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config2-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config3-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config4-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config5-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config6-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config7-None] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config8-'wrong type' is not of type 'object'] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config9-Additional properties are not allowed] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config10-{} does not have enough properties] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config11-'broken' is not of type 'object', 'array'] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config12-snap.commands: \\[\\] is too short] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config13-snap.commands: {} does not have enough properties] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config14-] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config15-] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config16-] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config17-] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config18-123 is not of type 'string'] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config19-123 is not of type 'string'] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config20-'broken' is not of type 'object', 'array'] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config21-\\[\\] is too short] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestSnapSchema::test_schema_validation[config22-\\{} does not have enough properties] PASSED [ 46%] tests/unittests/config/test_cc_snap.py::TestHandle::test_handle_adds_assertions PASSED [ 47%] tests/unittests/config/test_cc_spacewalk.py::TestSpacewalk::test_do_register PASSED [ 47%] tests/unittests/config/test_cc_spacewalk.py::TestSpacewalk::test_is_registered PASSED [ 47%] tests/unittests/config/test_cc_spacewalk.py::TestSpacewalk::test_not_is_registered PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_apply_credentials[with_user] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_apply_credentials[with_no_user] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_apply_credentials[with_user_disable_root] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_apply_credentials[with_no_user_disable_root] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_no_cfg PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_dont_allow_public_ssh_keys PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_default_root[no_cfg] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_default_root[explicit_disable_root] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_default_root[cfg_without_disable_root] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_publish_hostkeys[default] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_publish_hostkeys[config_enable] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_publish_hostkeys[config_disable] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_publish_hostkeys[config_blacklist] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_publish_hostkeys[empty_blacklist] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_ssh_keys_in_cfg[False] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_ssh_keys_in_cfg[True] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_invalid_ssh_keys_are_skipped[ecdsa-sk-unsupported] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_invalid_ssh_keys_are_skipped[ed25519-sk-unsupported] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestHandleSsh::test_handle_invalid_ssh_keys_are_skipped[public-unrecognized] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config0-None] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config1-None] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config2-'rsa_a' does not match any of the regexes] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config3-'a_public' does not match any of the regexes] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config4-'ecdsa-sk_public' does not match any of the regexes] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config5-'ed25519-sk_public' does not match any of the regexes] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config6-'ssh-rsa blah' is not of type 'array'] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config7-'bad' is not one of] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config8-\\['no-port-forwarding'\\] is not of type 'string'] PASSED [ 47%] tests/unittests/config/test_cc_ssh.py::TestSshSchema::test_schema_validation[config9-Additional properties are not allowed] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg0-False] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg1-False] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg2-True] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg3-True] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg4-True] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg5-True] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestIsKeyInNestedDict::test_find_ssh_import_id_directives[cfg6-True] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestHandleSshImportIDs::test_skip_inapplicable_configs[cfg0-no 'ssh_import_id' directives found] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestHandleSshImportIDs::test_skip_inapplicable_configs[cfg1-no 'ssh_import_id' directives found] PASSED [ 47%] tests/unittests/config/test_cc_ssh_import_id.py::TestHandleSshImportIDs::test_skip_inapplicable_configs[cfg2-ssh-import-id is not installed] PASSED [ 47%] tests/unittests/config/test_cc_timezone.py::TestTimezone::test_set_timezone_sles PASSED [ 47%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach_error PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach[with_token] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach[with_empty_services] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach[with_specific_services] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach[with_string_services] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach[with_weird_services] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_attach_on_service_error PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_config_with_weird_params PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_config_error_invalid_url PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestConfigureUA::test_configure_ua_config_error_non_string_values PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestUbuntuAdvantageSchema::test_schema_validation[config0-'token' is a required property] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestUbuntuAdvantageSchema::test_schema_validation[config1-ubuntu_advantage:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('invalidkey] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle[no_config] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle[tries_to_install_ubuntu_advantage_tools] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle[passes_credentials_and_services_to_configure_ua] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle[warns_on_deprecated_ubuntu_advantage_key_w_config] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle[prefers_new_style_config] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle_error_on_deprecated_commands_key_dashed[key_dashed] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestHandle::test_handle_error_on_deprecated_commands_key_dashed[key_underscore] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestMaybeInstallUATools::test_maybe_install_ua_tools[noop_when_ua_tools_present] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestMaybeInstallUATools::test_maybe_install_ua_tools[raises_update_errors] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestMaybeInstallUATools::test_maybe_install_ua_tools[raises_install_errors] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_advantage.py::TestMaybeInstallUATools::test_maybe_install_ua_tools_happy_path PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestvalidateConfigSchema::test_runtime_validation_errors[err_non_dict] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestvalidateConfigSchema::test_runtime_validation_errors[err_require_version_key] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestvalidateConfigSchema::test_runtime_validation_errors[err_version_non_int] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestHandleAutoinstall::test_handle_autoinstall_cfg[skip_no_cfg] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestHandleAutoinstall::test_handle_autoinstall_cfg[valid_autoinstall_schema_checks_snaps] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestHandleAutoinstall::test_handle_autoinstall_cfg[valid_autoinstall_schema_sees_subiquity] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestHandleAutoinstall::test_handle_autoinstall_cfg[valid_autoinstall_schema_sees_desktop_installer] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_autoinstall.py::TestAutoInstallSchema::test_schema_validation[config0-autoinstall: 'version' is a required property] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[True-without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[True-with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[yes-without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[yes-with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[true-without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[true-with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[on-without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[on-with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[1-without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_happy_path_taken[1-with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_raises_error_if_no_drivers_found[without_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_raises_error_if_no_drivers_found[with_version] PASSED [ 48%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[license_not_accepted-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[license_not_accepted-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[garbage_in_license_field-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[garbage_in_license_field-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[no_license_key-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[no_license_key-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[no_nvidia_key-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[no_nvidia_key-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_no-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_no-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_false-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_false-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_off-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_off-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_0-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[string_given_0-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[with_version-without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_inert[with_version-with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_no_drivers_does_nothing[without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_handle_no_drivers_does_nothing[with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_no_install_if_present[without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_no_install_if_present[with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_rejects_invalid_config[without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_rejects_invalid_config[with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_handles_old_ubuntu_drivers_gracefully[without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_install_drivers_handles_old_ubuntu_drivers_gracefully[with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_debconf_not_installed_does_nothing[without_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDrivers::test_debconf_not_installed_does_nothing[with_version] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDriversWithVersion::test_version_none_uses_latest PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDriversNotRun::test_no_cfg_drivers_does_nothing PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuDriversNotRun::test_has_not_debconf_does_nothing PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuAdvantageSchema::test_schema_validation[config0-drivers.nvidia.license-accepted: 'TRUE' is not of type 'boolean'] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuAdvantageSchema::test_schema_validation[config1-drivers:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('bogus'] PASSED [ 49%] tests/unittests/config/test_cc_ubuntu_drivers.py::TestUbuntuAdvantageSchema::test_schema_validation[config2-drivers\\.nvidia:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('bogus'\\ ] PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestHostsFile::test_write_etc_hosts_suse_localhost PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestHostsFile::test_write_etc_hosts_suse_template PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestUpdateEtcHosts::test_schema_validation[config0-expectation0] PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestUpdateEtcHosts::test_schema_validation[config1-expectation1] PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestUpdateEtcHosts::test_schema_validation[config2-expectation2] PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestUpdateEtcHosts::test_schema_validation[config3-expectation3] PASSED [ 49%] tests/unittests/config/test_cc_update_etc_hosts.py::TestUpdateEtcHosts::test_schema_validation[config4-expectation4] PASSED [ 49%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_handle_no_cfg_creates_no_users_or_groups PASSED [ 49%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_handle_users_in_cfg_calls_create_users PASSED [ 49%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_handle_users_in_cfg_calls_create_users_on_bsd PASSED [ 49%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_ssh_redirect_user_and_no_default PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_with_ssh_redirect_user_default_false PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_with_ssh_redirect_user_default_str PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_with_ssh_redirect_user_non_default PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_with_ssh_redirect_user_passes_keys PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestHandleUsersGroups::test_users_without_home_cannot_import_ssh_keys PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config0-expectation0-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config1-expectation1-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config2-expectation2-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config3-expectation3-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config4-expectation4-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config5-expectation5-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config6-expectation6-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config7-expectation7-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config8-expectation8-True] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config9-expectation9-True] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config10-expectation10-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config11-expectation11-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config12-expectation12-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config13-expectation13-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config14-expectation14-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config15-expectation15-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config16-expectation16-False] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config17-expectation17-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config18-expectation18-False] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config19-expectation19-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config20-expectation20-True] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config21-expectation21-True] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config22-expectation22-True] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config23-expectation23-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config24-expectation24-False] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config25-expectation25-False] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config26-expectation26-None] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config27-expectation27-False] PASSED [ 50%] tests/unittests/config/test_cc_users_groups.py::TestUsersGroupsSchema::test_schema_validation[config28-expectation28-True] PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_enable_wg_on_error PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_handle_no_config PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_load_wg_module_failed PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_maybe_install_wf_tools_raises_update_errors PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_maybe_install_wg_packages_happy_path PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_maybe_install_wg_packages_noop_when_wg_tools_present PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_maybe_install_wg_raises_install_errors PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_readiness_probe_invalid_command PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_readiness_probe_schema_non_string_values PASSED [ 50%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_readiness_probe_with_non_string_values PASSED [ 51%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_suppl_schema_error_on_missing_keys PASSED [ 51%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_suppl_schema_error_on_non_string_values PASSED [ 51%] tests/unittests/config/test_cc_wireguard.py::TestWireGuard::test_write_config_failed PASSED [ 51%] tests/unittests/config/test_cc_wireguard.py::TestWireguardSchema::test_schema_validation[config0-None] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_all_decodings PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_append PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_deferred PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_handle_plain_text PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_simple PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFiles::test_yaml_binary PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestDecodePerms::test_integer PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestDecodePerms::test_invalid_octal_string_returns_default_and_warns PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestDecodePerms::test_none_returns_default PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestDecodePerms::test_valid_octal_string PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config0-write_files: 1 is not of type 'array'] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config1-write_files:\\ \\[\\]\\ is\\ too\\ short] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config2-write_files.0: 'path' is a required property] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config3-write_files\\.0:\\ Additional\\ properties\\ are\\ not\\ allowed\\ \\('bogus'] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config4-write_files\\.0\\.encoding:\\ 'g'\\ is\\ not\\ one\\ of\\ \\['gz',\\ 'gzip',] PASSED [ 51%] tests/unittests/config/test_cc_write_files.py::TestWriteFilesSchema::test_schema_validation[config5-None] PASSED [ 51%] tests/unittests/config/test_cc_write_files_deferred.py::TestWriteFilesDeferred::test_filtering_deferred_files PASSED [ 51%] tests/unittests/config/test_cc_write_files_deferred.py::TestWriteFilesDeferredSchema::test_schema_validation[config0-write_files.0.defer: 'no' is not of type 'boolean'] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestConfig::test_bad_config PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestConfig::test_write_config PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestConfig::test_write_config_array PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config0-None] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config1-yum_repo_dir: True is not of type 'string'] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config2-yum_repos:\\ \\{\\}\\ does\\ not\\ have\\ enough\\ properties] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config3-yum_repos.My-Repo: 'baseurl' is a required] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config4-yum_repos.My Repo.enabled: 'nope' is not of type 'boolean'] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config5-does not match any of the regexes] PASSED [ 51%] tests/unittests/config/test_cc_yum_add_repo.py::TestAddYumRepoSchema::test_schema_validation[config6-does not match any of the regexes] PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_bad_repo_config PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_config_write PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_config_write_skip_configdir PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_empty_config_section_no_new_data PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_empty_config_value_no_new_data PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_handler_full_setup PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_no_config_section_no_new_data PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_no_repo_data PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_write_repo PASSED [ 51%] tests/unittests/config/test_cc_zypper_add_repo.py::TestConfig::test_write_repos PASSED [ 51%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg0-True-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg0-True-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg0-True-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg1-True-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg1-True-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[None-cfg1-True-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys2-cfg2-True-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys2-cfg2-True-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys2-cfg2-True-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys3-cfg3-True-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys3-cfg3-True-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys3-cfg3-True-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys4-cfg4-True-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys4-cfg4-True-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys4-cfg4-True-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys5-cfg5-False-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys5-cfg5-False-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys5-cfg5-False-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys6-cfg6-False-once-per-instance] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys6-cfg6-False-always] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable[activate_by_schema_keys6-cfg6-False-once] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ansible_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ansible_example_1] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apk_configure_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apk_configure_example_1] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apk_configure_example_2] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_configure_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_pipelining_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_pipelining_example_1] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_pipelining_example_2] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_pipelining_example_3] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_apt_pipelining_example_4] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_bootcmd_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_byobu_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_byobu_example_1] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ca_certs_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_chef_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_disable_ec2_metadata_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_disk_setup_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_fan_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_final_message_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_growpart_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_growpart_example_1] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_grub_dpkg_example_0] PASSED [ 52%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_install_hotplug_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_install_hotplug_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_keyboard_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_keyboard_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_keys_to_console_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_keys_to_console_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_keys_to_console_example_2] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_landscape_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_landscape_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_locale_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_locale_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_lxd_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_lxd_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_mcollective_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_migrator_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_mounts_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_mounts_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ntp_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ntp_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_package_update_upgrade_install_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_phone_home_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_phone_home_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_power_state_change_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_power_state_change_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_puppet_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_puppet_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_resizefs_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_resizefs_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_resolv_conf_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_rh_subscription_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_rh_subscription_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_rh_subscription_example_2] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_rsyslog_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_rsyslog_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_runcmd_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_salt_minion_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_scripts_vendor_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_scripts_vendor_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_scripts_vendor_example_2] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_seed_random_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_seed_random_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_set_hostname_example_0] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_set_hostname_example_1] PASSED [ 53%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_set_passwords_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_set_passwords_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_snap_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_snap_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_snap_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_snap_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_spacewalk_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ssh_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ssh_authkey_fingerprints_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ssh_authkey_fingerprints_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ssh_import_id_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_timezone_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_advantage_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_advantage_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_advantage_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_advantage_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_autoinstall_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_ubuntu_drivers_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_etc_hosts_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_etc_hosts_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_etc_hosts_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_hostname_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_hostname_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_hostname_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_hostname_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_update_hostname_example_4] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_4] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_users_groups_example_5] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_wireguard_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_write_files_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_write_files_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_write_files_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_write_files_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_write_files_example_4] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_yum_add_repo_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_yum_add_repo_example_1] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_yum_add_repo_example_2] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_yum_add_repo_example_3] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test__is_inapplicable_examples[cc_zypper_add_repo_example_0] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test_run_section[True-once-per-instance] PASSED [ 54%] tests/unittests/config/test_modules.py::TestModules::test_run_section[True-always] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section[True-once] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section[False-once-per-instance] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section[False-always] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section[False-once] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ansible_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ansible_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apk_configure_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apk_configure_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apk_configure_example_2] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_configure_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_pipelining_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_pipelining_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_pipelining_example_2] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_pipelining_example_3] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_apt_pipelining_example_4] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_bootcmd_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_byobu_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_byobu_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ca_certs_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_chef_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_disable_ec2_metadata_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_disk_setup_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_fan_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_final_message_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_growpart_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_growpart_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_grub_dpkg_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_install_hotplug_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_install_hotplug_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_keyboard_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_keyboard_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_keys_to_console_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_keys_to_console_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_keys_to_console_example_2] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_landscape_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_landscape_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_locale_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_locale_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_lxd_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_lxd_example_1] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_mcollective_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_migrator_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_mounts_example_0] PASSED [ 55%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_mounts_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ntp_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ntp_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_package_update_upgrade_install_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_phone_home_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_phone_home_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_power_state_change_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_power_state_change_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_puppet_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_puppet_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_resizefs_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_resizefs_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_resolv_conf_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_rh_subscription_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_rh_subscription_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_rh_subscription_example_2] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_rsyslog_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_rsyslog_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_runcmd_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_salt_minion_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_scripts_vendor_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_scripts_vendor_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_scripts_vendor_example_2] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_seed_random_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_seed_random_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_set_hostname_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_set_hostname_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_set_passwords_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_set_passwords_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_snap_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_snap_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_snap_example_2] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_snap_example_3] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_spacewalk_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ssh_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ssh_authkey_fingerprints_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ssh_authkey_fingerprints_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ssh_import_id_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_timezone_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_advantage_example_0] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_advantage_example_1] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_advantage_example_2] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_advantage_example_3] PASSED [ 56%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_autoinstall_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_ubuntu_drivers_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_etc_hosts_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_etc_hosts_example_1] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_etc_hosts_example_2] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_hostname_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_hostname_example_1] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_hostname_example_2] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_hostname_example_3] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_update_hostname_example_4] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_1] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_2] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_3] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_4] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_users_groups_example_5] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_wireguard_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_write_files_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_write_files_example_1] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_write_files_example_2] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_write_files_example_3] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_write_files_example_4] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_yum_add_repo_example_0] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_yum_add_repo_example_1] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_yum_add_repo_example_2] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_yum_add_repo_example_3] PASSED [ 57%] tests/unittests/config/test_modules.py::TestModules::test_run_section_examples[cc_zypper_add_repo_example_0] PASSED [ 57%] tests/unittests/config/test_salt_minion.py::TestSaltMinionSchema::test_schema_validation[config0-None] PASSED [ 57%] tests/unittests/config/test_salt_minion.py::TestSaltMinionSchema::test_schema_validation[config1-None] PASSED [ 57%] tests/unittests/config/test_salt_minion.py::TestSaltMinionSchema::test_schema_validation[config2-Additional properties are not allowed] PASSED [ 57%] tests/unittests/config/test_salt_minion.py::TestSaltMinionSchema::test_schema_validation[config3-'a' is not of type 'object'] PASSED [ 57%] tests/unittests/config/test_salt_minion.py::TestSaltMinionSchema::test_schema_validation[config4-'a' is not of type 'object'] PASSED [ 57%] tests/unittests/config/test_schema.py::TestVersionedSchemas::test_versioned_cloud_config_schema_is_valid_json[schema0-None] PASSED [ 57%] tests/unittests/config/test_schema.py::TestVersionedSchemas::test_versioned_cloud_config_schema_is_valid_json[schema1-None] PASSED [ 57%] tests/unittests/config/test_schema.py::TestVersionedSchemas::test_versioned_cloud_config_schema_is_valid_json[schema2-is not valid] PASSED [ 57%] tests/unittests/config/test_schema.py::TestVersionedSchemas::test_versioned_cloud_config_schema_is_valid_json[schema3-is not valid] PASSED [ 57%] tests/unittests/config/test_schema.py::TestVersionedSchemas::test_versioned_cloud_config_schema_is_valid_json[schema4-None] PASSED [ 57%] tests/unittests/config/test_schema.py::TestGetSchema::test_static_schema_file_is_valid PASSED [ 57%] tests/unittests/config/test_schema.py::TestGetSchema::test_get_schema_coalesces_known_schema PASSED [ 57%] tests/unittests/config/test_schema.py::TestLoadDoc::test_report_docs_consolidated_schema[cc_apt_pipelining] PASSED [ 57%] tests/unittests/config/test_schema.py::SchemaValidationErrorTest::test_schema_validation_error_expects_schema_errors PASSED [ 57%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_use_full_schema_when_no_schema_param[None-1] PASSED [ 57%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_use_full_schema_when_no_schema_param[schema1-0] PASSED [ 57%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_non_strict_emits_warnings PASSED [ 57%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_sensitive PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_emits_warning_on_missing_jsonschema PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_strict_raises_errors PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_honors_formats PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_schema_honors_formats_strict_metaschema PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_strict_metaschema_do_not_raise_exception PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema0-config0-Deprecated cloud-config provided:\na-b: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema0-config0-Deprecated cloud-config provided:\na-b: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema1-config1-Deprecated cloud-config provided:\nx: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema1-config1-Deprecated cloud-config provided:\nx: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema2-config2-Deprecated cloud-config provided:\nx: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema2-config2-Deprecated cloud-config provided:\nx: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema3-config3-Deprecated cloud-config provided:\nx: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema3-config3-Deprecated cloud-config provided:\nx: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema4-config4-Deprecated cloud-config provided:\nx: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema4-config4-Deprecated cloud-config provided:\nx: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema5-config5-None-True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema5-config5-None-False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema6-config6-Deprecated cloud-config provided:\nx: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema6-config6-Deprecated cloud-config provided:\nx: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema7-config7-Deprecated cloud-config provided:\nx: DEPRECATED.-True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema7-config7-Deprecated cloud-config provided:\nx: DEPRECATED.-False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema8-config8-Deprecated cloud-config provided:\na-b: DEPRECATED: -True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[schema8-config8-Deprecated cloud-config provided:\na-b: DEPRECATED: -False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[deprecated_pattern_property_without_description-True] PASSED [ 58%] tests/unittests/config/test_schema.py::TestValidateCloudConfigSchema::test_validateconfig_logs_deprecations[deprecated_pattern_property_without_description-False] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_set_hostname-preserve_hostname: true] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_set_hostname-hostname: myhost\nfqdn: myhost.example.com\nprefer_fqdn_over_hostname: true\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_configure-apt:\n preserve_sources_list: false\n disable_suites:\n - $RELEASE-updates\n - backports\n - $RELEASE\n - mysuite\n primary:\n - arches:\n - amd64\n - i386\n - default\n uri: 'http://us.archive.ubuntu.com/ubuntu'\n search:\n - 'http://cool.but-sometimes-unreachable.com/ubuntu'\n - 'http://us.archive.ubuntu.com/ubuntu'\n search_dns: false\n - arches:\n - s390x\n - arm64\n uri: 'http://archive-to-use-for-arm64.example.com/ubuntu'\n\n security:\n - arches:\n - default\n search_dns: true\n sources_list: |\n deb $MIRROR $RELEASE main restricted\n deb-src $MIRROR $RELEASE main restricted\n deb $PRIMARY $RELEASE universe restricted\n deb $SECURITY $RELEASE-security multiverse\n debconf_selections:\n set1: the-package the-package/some-flag boolean true\n conf: |\n APT {\n Get {\n Assume-Yes 'true';\n Fix-Broken 'true';\n }\n }\n proxy: 'http://[[user][:pass]@]host[:port]/'\n http_proxy: 'http://[[user][:pass]@]host[:port]/'\n ftp_proxy: 'ftp://[[user][:pass]@]host[:port]/'\n https_proxy: 'https://[[user][:pass]@]host[:port]/'\n sources:\n source1:\n keyid: 'keyid'\n keyserver: 'keyserverurl'\n source: 'deb [signed-by=$KEY_FILE] http:/// bionic main'\n source2:\n source: 'ppa:'\n source3:\n source: 'deb $MIRROR $RELEASE multiverse'\n key: |\n ------BEGIN PGP PUBLIC KEY BLOCK-------\n \n ------END PGP PUBLIC KEY BLOCK-------] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ansible-#cloud-config\nansible:\n install-method: distro\n pull:\n url: "https://github.com/holmanb/vmboot.git"\n playbook-name: ubuntu.yml\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ansible-#cloud-config\nansible:\n package-name: ansible-core\n install-method: pip\n pull:\n url: "https://github.com/holmanb/vmboot.git"\n playbook-name: ubuntu.yml\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apk_configure-# Keep the existing /etc/apk/repositories file unaltered.\napk_repos:\n preserve_repositories: true\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apk_configure-# Create repositories file for Alpine v3.12 main and community\n# using default mirror site.\napk_repos:\n alpine_repo:\n community_enabled: true\n version: 'v3.12'\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apk_configure-# Create repositories file for Alpine Edge main, community, and\n# testing using a specified mirror site and also a local repo.\napk_repos:\n alpine_repo:\n base_url: 'https://some-alpine-mirror/alpine'\n community_enabled: true\n testing_enabled: true\n version: 'edge'\n local_repo_base_url: 'https://my-local-server/local-alpine'\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_pipelining-apt_pipelining: false] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_pipelining-apt_pipelining: none] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_pipelining-apt_pipelining: unchanged] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_pipelining-apt_pipelining: os] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_apt_pipelining-apt_pipelining: 3] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_bootcmd-bootcmd:\n - echo 192.168.1.130 us.archive.ubuntu.com > /etc/hosts\n - [ cloud-init-per, once, mymkfs, mkfs, /dev/vdb ]\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ca_certs-ca_certs:\n remove_defaults: true\n trusted:\n - single_line_cert\n - |\n -----BEGIN CERTIFICATE-----\n YOUR-ORGS-TRUSTED-CA-CERT-HERE\n -----END CERTIFICATE-----\n] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_chef-\nchef:\n directories:\n - /etc/chef\n - /var/log/chef\n validation_cert: system\n install_type: omnibus\n initial_attributes:\n apache:\n prefork:\n maxclients: 100\n keepalive: off\n run_list:\n - recipe[apache2]\n - role[db]\n encrypted_data_bag_secret: /etc/chef/encrypted_data_bag_secret\n environment: _default\n log_level: :auto\n omnibus_url_retries: 2\n server_url: https://chef.yourorg.com:4000\n ssl_verify_mode: :verify_peer\n validation_name: yourorg-validator] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_disable_ec2_metadata-disable_ec2_metadata: true] PASSED [ 58%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_disk_setup-device_aliases:\n my_alias: /dev/sdb\ndisk_setup:\n my_alias:\n table_type: gpt\n layout: [50, 50]\n overwrite: true\nfs_setup:\n- label: fs1\n filesystem: ext4\n device: my_alias.1\n cmd: mkfs -t %(filesystem)s -L %(label)s %(device)s\n- label: fs2\n device: my_alias.2\n filesystem: ext4\nmounts:\n- ["my_alias.1", "/mnt1"]\n- ["my_alias.2", "/mnt2"]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_final_message-final_message: |\n cloud-init has finished\n version: $version\n timestamp: $timestamp\n datasource: $datasource\n uptime: $uptime\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_growpart-growpart:\n mode: auto\n devices: ["/"]\n ignore_growroot_disabled: false\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_growpart-growpart:\n mode: growpart\n devices:\n - "/"\n - "/dev/vdb1"\n ignore_growroot_disabled: true\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_grub_dpkg-grub_dpkg:\n enabled: true\n grub-pc/install_devices: /dev/sda\n grub-pc/install_devices_empty: false\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_install_hotplug-# Enable hotplug of network devices\nupdates:\n network:\n when: ["hotplug"]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_install_hotplug-# Enable network hotplug alongside boot event\nupdates:\n network:\n when: ["boot", "hotplug"]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_keys_to_console-# Do not print any SSH keys to system console\nssh:\n emit_keys_to_console: false\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_keys_to_console-# Do not print certain ssh key types to console\nssh_key_console_blacklist: [dsa, ssh-dss]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_keys_to_console-# Do not print specific ssh key fingerprints to console\nssh_fp_console_blacklist:\n- E25451E0221B5773DEBFF178ECDACB160995AA89\n- FE76292D55E8B28EE6DB2B34B2D8A784F8C0AAB0\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_landscape-# To discover additional supported client keys, run\n# man landscape-config.\nlandscape:\n client:\n url: "https://landscape.canonical.com/message-system"\n ping_url: "http://landscape.canonical.com/ping"\n data_path: "/var/lib/landscape/client"\n http_proxy: "http://my.proxy.com/foobar"\n https_proxy: "https://my.proxy.com/foobar"\n tags: "server,cloud"\n computer_title: "footitle"\n registration_key: "fookey"\n account_name: "fooaccount"\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_landscape-# Any keys below `client` are optional and the default values will\n# be used.\nlandscape:\n client: {}\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_locale-# Set the locale to ar_AE\nlocale: ar_AE\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_locale-# Set the locale to fr_CA in /etc/alternate_path/locale\nlocale: fr_CA\nlocale_configfile: /etc/alternate_path/locale\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_lxd-# Simplest working directory backed LXD configuration\nlxd:\n init:\n storage_backend: dir\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_lxd-lxd:\n init:\n network_address: 0.0.0.0\n network_port: 8443\n storage_backend: zfs\n storage_pool: datapool\n storage_create_loop: 10\n bridge:\n mode: new\n mtu: 1500\n name: lxdbr0\n ipv4_address: 10.0.8.1\n ipv4_netmask: 24\n ipv4_dhcp_first: 10.0.8.2\n ipv4_dhcp_last: 10.0.8.3\n ipv4_dhcp_leases: 250\n ipv4_nat: true\n ipv6_address: fd98:9e0:3744::1\n ipv6_netmask: 64\n ipv6_nat: true\n domain: lxd\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_mcollective-# Provide server private and public key and provide the following\n# config settings in /etc/mcollective/server.cfg:\n# loglevel: debug\n# plugin.stomp.host: dbhost\n\n# WARNING WARNING WARNING\n# The ec2 metadata service is a network service, and thus is\n# readable by non-root users on the system\n# (ie: 'ec2metadata --user-data')\n# If you want security for this, please use include-once + SSL urls\nmcollective:\n conf:\n loglevel: debug\n plugin.stomp.host: dbhost\n public-cert: |\n -------BEGIN CERTIFICATE--------\n \n -------END CERTIFICATE--------\n private-cert: |\n -------BEGIN CERTIFICATE--------\n \n -------END CERTIFICATE--------\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_mounts-# Mount ephemeral0 with "noexec" flag, /dev/sdc with mount_default_fields,\n# and /dev/xvdh with custom fs_passno "0" to avoid fsck on the mount.\n# Also provide an automatically sized swap with a max size of 10485760\n# bytes.\nmounts:\n - [ /dev/ephemeral0, /mnt, auto, "defaults,noexec" ]\n - [ sdc, /opt/data ]\n - [ xvdh, /opt/data, auto, "defaults,nofail", "0", "0" ]\nmount_default_fields: [None, None, auto, "defaults,nofail", "0", "2"]\nswap:\n filename: /my/swapfile\n size: auto\n maxsize: 10485760\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_mounts-# Create a 2 GB swap file at /swapfile using human-readable values\nswap:\n filename: /swapfile\n size: 2G\n maxsize: 2G\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ntp-# Override ntp with chrony configuration on Ubuntu\nntp:\n enabled: true\n ntp_client: chrony # Uses cloud-init default chrony configuration\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ntp-# Provide a custom ntp client configuration\nntp:\n enabled: true\n ntp_client: myntpclient\n config:\n confpath: /etc/myntpclient/myntpclient.conf\n check_exe: myntpclientd\n packages:\n - myntpclient\n service_name: myntpclient\n template: |\n ## template:jinja\n # My NTP Client config\n {% if pools -%}# pools{% endif %}\n {% for pool in pools -%}\n pool {{pool}} iburst\n {% endfor %}\n {%- if servers %}# servers\n {% endif %}\n {% for server in servers -%}\n server {{server}} iburst\n {% endfor %}\n pools: [0.int.pool.ntp.org, 1.int.pool.ntp.org, ntp.myorg.org]\n servers:\n - ntp.server.local\n - ntp.ubuntu.com\n - 192.168.23.2] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_phone_home-phone_home:\n url: http://example.com/$INSTANCE_ID/\n post: all\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_phone_home-phone_home:\n url: http://example.com/$INSTANCE_ID/\n post:\n - pub_key_dsa\n - pub_key_rsa\n - pub_key_ecdsa\n - pub_key_ed25519\n - instance_id\n - hostname\n - fqdn\n tries: 5\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_power_state_change-power_state:\n delay: now\n mode: poweroff\n message: Powering off\n timeout: 2\n condition: true\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_power_state_change-power_state:\n delay: 30\n mode: reboot\n message: Rebooting machine\n condition: test -f /var/tmp/reboot_me\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_puppet-puppet:\n install: true\n version: "7.7.0"\n install_type: "aio"\n collection: "puppet7"\n aio_install_url: 'https://git.io/JBhoQ'\n cleanup: true\n conf_file: "/etc/puppet/puppet.conf"\n ssl_dir: "/var/lib/puppet/ssl"\n csr_attributes_path: "/etc/puppet/csr_attributes.yaml"\n exec: true\n exec_args: ['--test']\n conf:\n agent:\n server: "puppetserver.example.org"\n certname: "%i.%f"\n ca_cert: |\n -----BEGIN CERTIFICATE-----\n MIICCTCCAXKgAwIBAgIBATANBgkqhkiG9w0BAQUFADANMQswCQYDVQQDDAJjYTAe\n Fw0xMDAyMTUxNzI5MjFaFw0xNTAyMTQxNzI5MjFaMA0xCzAJBgNVBAMMAmNhMIGf\n MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCu7Q40sm47/E1Pf+r8AYb/V/FWGPgc\n b014OmNoX7dgCxTDvps/h8Vw555PdAFsW5+QhsGr31IJNI3kSYprFQcYf7A8tNWu\n 1MASW2CfaEiOEi9F1R3R4Qlz4ix+iNoHiUDTjazw/tZwEdxaQXQVLwgTGRwVa+aA\n qbutJKi93MILLwIDAQABo3kwdzA4BglghkgBhvhCAQ0EKxYpUHVwcGV0IFJ1Ynkv\n T3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwDwYDVR0TAQH/BAUwAwEB/zAd\n BgNVHQ4EFgQUu4+jHB+GYE5Vxo+ol1OAhevspjAwCwYDVR0PBAQDAgEGMA0GCSqG\n SIb3DQEBBQUAA4GBAH/rxlUIjwNb3n7TXJcDJ6MMHUlwjr03BDJXKb34Ulndkpaf\n +GAlzPXWa7bO908M9I8RnPfvtKnteLbvgTK+h+zX1XCty+S2EQWk29i2AdoqOTxb\n hppiGMp0tT5Havu4aceCXiy2crVcudj3NFciy8X66SoECemW9UYDCb9T5D0d\n -----END CERTIFICATE-----\n csr_attributes:\n custom_attributes:\n 1.2.840.113549.1.9.7: 342thbjkt82094y0uthhor289jnqthpc2290\n extension_requests:\n pp_uuid: ED803750-E3C7-44F5-BB08-41A04433FE2E\n pp_image_name: my_ami_image\n pp_preshared_key: 342thbjkt82094y0uthhor289jnqthpc2290\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_puppet-puppet:\n install_type: "packages"\n package_name: "puppet"\n exec: false\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_resizefs-resize_rootfs: false # disable root filesystem resize operation] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_resizefs-resize_rootfs: noblock # runs resize operation in the background] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_resolv_conf-manage_resolv_conf: true\nresolv_conf:\n nameservers:\n - 8.8.8.8\n - 8.8.4.4\n searchdomains:\n - foo.example.com\n - bar.example.com\n domain: example.com\n sortlist:\n - 10.0.0.1/255\n - 10.0.0.2\n options:\n rotate: true\n timeout: 1\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_rh_subscription-rh_subscription:\n username: joe@foo.bar\n ## Quote your password if it has symbols to be safe\n password: '1234abcd'\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_rh_subscription-rh_subscription:\n activation-key: foobar\n org: 12345\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_rh_subscription-rh_subscription:\n activation-key: foobar\n org: 12345\n auto-attach: true\n service-level: self-support\n add-pool:\n - 1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a\n - 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b\n enable-repo:\n - repo-id-to-enable\n - other-repo-id-to-enable\n disable-repo:\n - repo-id-to-disable\n - other-repo-id-to-disable\n # Alter the baseurl in /etc/rhsm/rhsm.conf\n rhsm-baseurl: http://url\n # Alter the server hostname in /etc/rhsm/rhsm.conf\n server-hostname: foo.bar.com\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_rsyslog-rsyslog:\n remotes:\n maas: 192.168.1.1\n juju: 10.0.4.1\n service_reload_command: auto\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_rsyslog-rsyslog:\n config_dir: /opt/etc/rsyslog.d\n config_filename: 99-late-cloud-config.conf\n configs:\n - "*.* @@192.158.1.1"\n - content: "*.* @@192.0.2.1:10514"\n filename: 01-example.conf\n - content: |\n *.* @@syslogd.example.com\n remotes:\n maas: 192.168.1.1\n juju: 10.0.4.1\n service_reload_command: [your, syslog, restart, command]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_runcmd-runcmd:\n - [ ls, -l, / ]\n - [ sh, -xc, "echo $(date) ': hello world!'" ]\n - [ sh, -c, echo "=========hello world'=========" ]\n - ls -l /root\n - [ wget, "http://example.org", -O, /tmp/index.html ]\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_seed_random-random_seed:\n file: /dev/urandom\n data: my random string\n encoding: raw\n command: ['sh', '-c', 'dd if=/dev/urandom of=$RANDOM_SEED_FILE']\n command_required: true\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_seed_random-# To use 'pollinate' to gather data from a remote entropy\n# server and write it to '/dev/urandom', the following\n# could be used:\nrandom_seed:\n file: /dev/urandom\n command: ["pollinate", "--server=http://local.polinate.server"]\n command_required: true\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_set_passwords-# Set a default password that would need to be changed\n# at first login\nssh_pwauth: true\npassword: password1\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_set_passwords-# Disable ssh password authentication\n# Don't require users to change their passwords on next login\n# Set the password for user1 to be 'password1' (OS does hashing)\n# Set the password for user2 to a pre-hashed password\n# Set the password for user3 to be a randomly generated password,\n# which will be written to the system console\nssh_pwauth: false\nchpasswd:\n expire: false\n users:\n - name: user1\n password: password1\n type: text\n - name: user2\n password: $6$rounds=4096$5DJ8a9WMTEzIo5J4$Yms6imfeBvf3Yfu84mQBerh18l7OR1Wm1BJXZqFSpJ6BVas0AYJqIjP7czkOaAZHZi1kxQ5Y1IhgWN8K9NgxR1\n - name: user3\n type: RANDOM\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_snap-snap:\n assertions:\n 00: |\n signed_assertion_blob_here\n 02: |\n signed_assertion_blob_here\n commands:\n 00: snap create-user --sudoer --known @mydomain.com\n 01: snap install canonical-livepatch\n 02: canonical-livepatch enable \n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_snap-# Convenience: the snap command can be omitted when specifying commands\n# as a list and 'snap' will automatically be prepended.\n# The following commands are equivalent:\nsnap:\n commands:\n 00: ['install', 'vlc']\n 01: ['snap', 'install', 'vlc']\n 02: snap install vlc\n 03: 'snap install vlc'\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_snap-# You can use a list of commands\nsnap:\n commands:\n - ['install', 'vlc']\n - ['snap', 'install', 'vlc']\n - snap install vlc\n - 'snap install vlc'\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_snap-# You can use a list of assertions\nsnap:\n assertions:\n - signed_assertion_blob_here\n - |\n signed_assertion_blob_here\n] PASSED [ 59%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_spacewalk-spacewalk:\n server: \n proxy: \n activation_key: \n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ssh-ssh_keys:\n rsa_private: |\n -----BEGIN RSA PRIVATE KEY-----\n MIIBxwIBAAJhAKD0YSHy73nUgysO13XsJmd4fHiFyQ+00R7VVu2iV9Qco\n ...\n -----END RSA PRIVATE KEY-----\n rsa_public: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAGEAoPRhIfLvedSDKw7Xd ...\n rsa_certificate: |\n ssh-rsa-cert-v01@openssh.com AAAAIHNzaC1lZDI1NTE5LWNlcnQt ...\n dsa_private: |\n -----BEGIN DSA PRIVATE KEY-----\n MIIBxwIBAAJhAKD0YSHy73nUgysO13XsJmd4fHiFyQ+00R7VVu2iV9Qco\n ...\n -----END DSA PRIVATE KEY-----\n dsa_public: ssh-dsa AAAAB3NzaC1yc2EAAAABIwAAAGEAoPRhIfLvedSDKw7Xd ...\n dsa_certificate: |\n ssh-dsa-cert-v01@openssh.com AAAAIHNzaC1lZDI1NTE5LWNlcnQt ...\nssh_authorized_keys:\n - ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAGEA3FSyQwBI6Z+nCSjUU ...\n - ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA3I7VUf2l5gSn5uavROsc5HRDpZ ...\nssh_deletekeys: true\nssh_genkeytypes: [rsa, dsa, ecdsa, ed25519]\ndisable_root: true\ndisable_root_opts: no-port-forwarding,no-agent-forwarding,no-X11-forwarding\nallow_public_ssh_keys: true\nssh_quiet_keygen: true\nssh_publish_hostkeys:\n enabled: true\n blacklist: [dsa]\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ssh_import_id-ssh_import_id:\n - user\n - gh:user\n - lp:user\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_timezone-timezone: US/Eastern] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_advantage-# Attach the machine to an Ubuntu Advantage support contract with a\n# UA contract token obtained from https://ubuntu.com/advantage.\nubuntu_advantage:\n token: \n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_advantage-# Attach the machine to an Ubuntu Advantage support contract enabling\n# only fips and esm services. Services will only be enabled if\n# the environment supports said service. Otherwise warnings will\n# be logged for incompatible services specified.\nubuntu_advantage:\n token: \n enable:\n - fips\n - esm\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_advantage-# Attach the machine to an Ubuntu Advantage support contract and enable\n# the FIPS service. Perform a reboot once cloud-init has\n# completed.\npower_state:\n mode: reboot\nubuntu_advantage:\n token: \n enable:\n - fips\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_advantage-# Set a http(s) proxy before attaching the machine to an\n# Ubuntu Advantage support contract and enabling the FIPS service.\nubuntu_advantage:\n token: \n config:\n http_proxy: 'http://some-proxy:8088'\n https_proxy: 'https://some-proxy:8088'\n global_apt_https_proxy: 'http://some-global-apt-proxy:8088/'\n global_apt_http_proxy: 'https://some-global-apt-proxy:8088/'\n ua_apt_http_proxy: 'http://10.0.10.10:3128'\n ua_apt_https_proxy: 'https://10.0.10.10:3128'\n enable:\n - fips\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_autoinstall-# Tell the live-server installer to provide dhcp6 network config\n# and LVM on a disk matching the serial number prefix CT\nautoinstall:\n version: 1\n network:\n version: 2\n ethernets:\n enp0s31f6:\n dhcp6: yes\n storage:\n layout:\n name: lvm\n match:\n serial: CT*\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ubuntu_drivers-drivers:\n nvidia:\n license-accepted: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_etc_hosts-# Do not update or manage /etc/hosts at all. This is the default behavior.\n#\n# Whatever is present at instance boot time will be present after boot.\n# User changes will not be overwritten.\nmanage_etc_hosts: false\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_etc_hosts-# Manage /etc/hosts with cloud-init.\n# On every boot, /etc/hosts will be re-written from\n# ``/etc/cloud/templates/hosts.tmpl``.\n#\n# The strings '$hostname' and '$fqdn' are replaced in the template\n# with the appropriate values either from the config-config ``fqdn`` or\n# ``hostname`` if provided. When absent, the cloud metadata will be\n# checked for ``local-hostname` which can be split into ..\n#\n# To make modifications persistent across a reboot, you must modify\n# ``/etc/cloud/templates/hosts.tmpl``.\nmanage_etc_hosts: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_etc_hosts-# Update /etc/hosts every boot providing a "localhost" 127.0.1.1 entry\n# with the latest hostname and fqdn as provided by either IMDS or\n# cloud-config.\n# All other entries will be left as is.\n# 'ping `hostname`' will ping 127.0.1.1\nmanage_etc_hosts: localhost\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# Add the ``default_user`` from /etc/cloud/cloud.cfg.\n# This is also the default behavior of cloud-init when no `users` key\n# is provided.\nusers:\n- default\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# Add the 'admingroup' with members 'root' and 'sys' and an empty\n# group cloud-users.\ngroups:\n- admingroup: [root,sys]\n- cloud-users\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# Skip creation of the user and only create newsuper.\n# Password-based login is rejected, but the github user TheRealFalcon\n# and the launchpad user falcojr can SSH as newsuper. The default\n# shell for newsuper is bash instead of system default.\nusers:\n- name: newsuper\n gecos: Big Stuff\n groups: users, admin\n sudo: ALL=(ALL) NOPASSWD:ALL\n shell: /bin/bash\n lock_passwd: true\n ssh_import_id:\n - lp:falcojr\n - gh:TheRealFalcon\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# On a system with SELinux enabled, add youruser and set the\n# SELinux user to 'staff_u'. When omitted on SELinux, the system will\n# select the configured default SELinux user.\nusers:\n- default\n- name: youruser\n selinux_user: staff_u\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# To redirect a legacy username to the user for a\n# distribution, ssh_redirect_user will accept an SSH connection and\n# emit a message telling the client to ssh as the user.\n# SSH clients will get the message:\nusers:\n- default\n- name: nosshlogins\n ssh_redirect_user: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_users_groups-# Override any ``default_user`` config in /etc/cloud/cloud.cfg with\n# supplemental config options.\n# This config will make the default user to mynewdefault and change\n# the user to not have sudo rights.\nssh_import_id: [chad.smith]\nuser:\n name: mynewdefault\n sudo: null\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_wireguard-# Configure one or more WG interfaces and provide optional readinessprobes\nwireguard:\n interfaces:\n - name: wg0\n config_path: /etc/wireguard/wg0.conf\n content: |\n [Interface]\n PrivateKey = \n Address =
\n [Peer]\n PublicKey = \n Endpoint = :\n AllowedIPs = , , ...\n - name: wg1\n config_path: /etc/wireguard/wg1.conf\n content: |\n [Interface]\n PrivateKey = \n Address =
\n [Peer]\n PublicKey = \n Endpoint = :\n AllowedIPs = \n readinessprobe:\n - 'systemctl restart service'\n - 'curl https://webhook.endpoint/example'\n - 'nc -zv some-service-fqdn 443'\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_write_files-# Write out base64 encoded content to /etc/sysconfig/selinux\nwrite_files:\n- encoding: b64\n content: CiMgVGhpcyBmaWxlIGNvbnRyb2xzIHRoZSBzdGF0ZSBvZiBTRUxpbnV4...\n owner: root:root\n path: /etc/sysconfig/selinux\n permissions: '0644'\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_write_files-# Appending content to an existing file\nwrite_files:\n- content: |\n 15 * * * * root ship_logs\n path: /etc/crontab\n append: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_write_files-# Provide gziped binary content\nwrite_files:\n- encoding: gzip\n content: !!binary |\n H4sIAIDb/U8C/1NW1E/KzNMvzuBKTc7IV8hIzcnJVyjPL8pJ4QIA6N+MVxsAAAA=\n path: /usr/bin/hello\n permissions: '0755'\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_write_files-# Create an empty file on the system\nwrite_files:\n- path: /root/CLOUD_INIT_WAS_HERE\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_write_files-# Defer writing the file until after the package (Nginx) is\n# installed and its user is created alongside\nwrite_files:\n- path: /etc/nginx/conf.d/example.com.conf\n content: |\n server {\n server_name example.com;\n listen 80;\n root /var/www;\n location / {\n try_files $uri $uri/ $uri.html =404;\n }\n }\n owner: 'nginx:nginx'\n permissions: '0640'\n defer: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_yum_add_repo-yum_repos:\n my_repo:\n baseurl: http://blah.org/pub/epel/testing/5/$basearch/\nyum_repo_dir: /store/custom/yum.repos.d\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_yum_add_repo-# Enable cloud-init upstream's daily testing repo for EPEL 8 to\n# install latest cloud-init from tip of `main` for testing.\nyum_repos:\n cloud-init-daily:\n name: Copr repo for cloud-init-dev owned by @cloud-init\n baseurl: https://download.copr.fedorainfracloud.org/results/@cloud-init/cloud-init-dev/epel-8-$basearch/\n type: rpm-md\n skip_if_unavailable: true\n gpgcheck: true\n gpgkey: https://download.copr.fedorainfracloud.org/results/@cloud-init/cloud-init-dev/pubkey.gpg\n enabled_metadata: 1\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_yum_add_repo-# Add the file /etc/yum.repos.d/epel_testing.repo which can then\n# subsequently be used by yum for later operations.\nyum_repos:\n# The name of the repository\n epel-testing:\n baseurl: https://download.copr.fedorainfracloud.org/results/@cloud-init/cloud-init-dev/pubkey.gpg\n enabled: false\n failovermethod: priority\n gpgcheck: true\n gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL\n name: Extra Packages for Enterprise Linux 5 - Testing\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_yum_add_repo-# Any yum repo configuration can be passed directly into\n# the repository file created. See: man yum.conf for supported\n# config keys.\n#\n# Write /etc/yum.conf.d/my-package-stream.repo with gpgkey checks\n# on the repo data of the repository enabled.\nyum_repos:\n my package stream:\n baseurl: http://blah.org/pub/epel/testing/5/$basearch/\n mirrorlist: http://some-url-to-list-of-baseurls\n repo_gpgcheck: 1\n enable_gpgcheck: true\n gpgkey: https://url.to.ascii-armored-gpg-key\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_zypper_add_repo-zypper:\n repos:\n - id: opensuse-oss\n name: os-oss\n baseurl: http://dl.opensuse.org/dist/leap/v/repo/oss/\n enabled: 1\n autorefresh: 1\n - id: opensuse-oss-update\n name: os-oss-up\n baseurl: http://dl.opensuse.org/dist/leap/v/update\n # any setting per\n # https://en.opensuse.org/openSUSE:Standards_RepoInfo\n # enable and autorefresh are on by default\n config:\n reposdir: /etc/zypp/repos.dir\n servicesdir: /etc/zypp/services.d\n download.use_deltarpm: true\n # any setting in /etc/zypp/zypp.conf\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_byobu-byobu_by_default: enable-user] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_byobu-byobu_by_default: disable-system] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_fan-fan:\n config: |\n # fan 240\n 10.0.0.0/8 eth0/16 dhcp\n 10.0.0.0/8 eth1/16 dhcp off\n # fan 241\n 241.0.0.0/8 eth0/16 dhcp\n config_path: /etc/network/fan\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_keyboard-# Set keyboard layout to "us"\nkeyboard:\n layout: us\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_keyboard-# Set specific keyboard layout, model, variant, options\nkeyboard:\n layout: de\n model: pc105\n variant: nodeadkeys\n options: compose:rwin\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_migrator-# Do not migrate cloud-init semaphores\nmigrate: false\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_package_update_upgrade_install-packages:\n - pwgen\n - pastebinit\n - [libpython3.8, 3.8.10-0ubuntu1~20.04.2]\npackage_update: true\npackage_upgrade: true\npackage_reboot_if_required: true\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_salt_minion-salt_minion:\n pkg_name: salt-minion\n service_name: salt-minion\n config_dir: /etc/salt\n conf:\n master: salt.example.com\n grains:\n role:\n - web\n public_key: |\n ------BEGIN PUBLIC KEY-------\n \n ------END PUBLIC KEY-------\n private_key: |\n ------BEGIN PRIVATE KEY------\n \n ------END PRIVATE KEY-------\n pki_dir: /etc/salt/pki/minion\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_scripts_vendor-vendor_data:\n enabled: true\n prefix: /usr/bin/ltrace\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_scripts_vendor-vendor_data:\n enabled: true\n prefix: [timeout, 30]\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_scripts_vendor-# Vendor data will not be processed\nvendor_data:\n enabled: false\n] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ssh_authkey_fingerprints-no_ssh_fingerprints: true] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_ssh_authkey_fingerprints-authkey_hash: sha512] PASSED [ 60%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_hostname-# By default: when ``preserve_hostname`` is not specified cloud-init\n# updates ``/etc/hostname`` per-boot based on the cloud provided\n# ``local-hostname`` setting. If you manually change ``/etc/hostname``\n# after boot cloud-init will no longer modify it.\n#\n# This default cloud-init behavior is equivalent to this cloud-config:\npreserve_hostname: false\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_hostname-# Prevent cloud-init from updating the system hostname.\npreserve_hostname: true\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_hostname-# Prevent cloud-init from updating ``/etc/hostname``\npreserve_hostname: true\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_hostname-# Set hostname to "external.fqdn.me" instead of "myhost"\nfqdn: external.fqdn.me\nhostname: myhost\nprefer_fqdn_over_hostname: true\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestCloudConfigExamples::test_validateconfig_schema_of_example[cc_update_hostname-# Set hostname to "external" instead of "external.fqdn.me" when\n# cloud metadata provides the ``local-hostname``: "external.fqdn.me".\nprefer_fqdn_over_hostname: false\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_absent_file[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_absent_file[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_invalid_header[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_invalid_header[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_non_yaml_scanner_error[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_non_yaml_scanner_error[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_non_yaml_parser_error[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_error_on_non_yaml_parser_error[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_strictly_validates_schema[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_strictly_validates_schema[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_include_validates_schema[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_include_validates_schema[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_include_success[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_include_success[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_no_cloud_cfg[True] PASSED [ 61%] tests/unittests/config/test_schema.py::TestValidateCloudConfigFile::test_validateconfig_file_no_cloud_cfg[False] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_returns_restructured_text[None] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_returns_restructured_text[meta_update1] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_returns_restructured_text[meta_update2] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_full_with_activate_by_schema_keys PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_multiple_types PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_multiple_types_recursive[oneOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_multiple_types_recursive[anyOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_references_are_flattened_in_schema_docs PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_enum_types[sub_schema0-**prop1:** (``true``/``false``/``stuff``)] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_enum_types[sub_schema1-**prop1:** (``a``/``b``)] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_hidden_hides_specific_properties_from_docs[schema0-\n**Config schema**:\n **label2:** (string)\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_hidden_hides_specific_properties_from_docs[schema1-\n**Config schema**:\n **p2:** (boolean)\n] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_nested_multi_schema_property_types[oneOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_nested_multi_schema_property_types[anyOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_types_as_list[oneOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_types_as_list[anyOf] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_flattening_defs PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_handles_string_examples PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_properly_parse_description PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[title] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[description] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[id] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[name] PASSED [ 61%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[frequency] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[distros] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_raises_key_errors[examples] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_additional_keys[activate_by_schema_keys-expectation0] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_additional_keys[additional_key-expectation1] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_label_overrides_property_name PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema0-**prop1:** (string/integer) DEPRECATED: ] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema1-**prop1:** (string/integer) DEPRECATED: ] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema2-**prop1:** (string/integer) DEPRECATED: ] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema3-**prop1:** (string/integer) DEPRECATED: ] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema4-**prop1:** (UNDEFINED) . DEPRECATED: . DEPRECATED: ] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema6-**prop1:** (``none``/``unchanged``/``os``) . DEPRECATED: .] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema7-**prop1:** (string/integer/``none``/``unchanged``/``os``) . _2.\n] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocMarkdown::test_get_meta_doc_render_deprecated_info[schema8-**prop1:** (array of object) .\n] PASSED [ 62%] tests/unittests/config/test_schema.py::TestAnnotatedCloudconfigFile::test_annotated_cloudconfig_file_no_schema_errors PASSED [ 62%] tests/unittests/config/test_schema.py::TestAnnotatedCloudconfigFile::test_annotated_cloudconfig_file_with_non_dict_cloud_config PASSED [ 62%] tests/unittests/config/test_schema.py::TestAnnotatedCloudconfigFile::test_annotated_cloudconfig_file_schema_annotates_and_adds_footer PASSED [ 62%] tests/unittests/config/test_schema.py::TestAnnotatedCloudconfigFile::test_annotated_cloudconfig_file_annotates_separate_line_items PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_exclusive_args[params0] PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_exclusive_args[params1] PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_exclusive_args[params2] PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_missing_args PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_absent_config_file PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_invalid_flag_combo PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_prints_docs PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_validates_config_file PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_validates_system_userdata PASSED [ 62%] tests/unittests/config/test_schema.py::TestMain::test_main_system_userdata_requires_root PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-add-apt-repos.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-ansible.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-apt.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-boot-cmds.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-ca-certs.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-chef-oneiric.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-chef.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-datasources.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-disk-setup.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-gluster.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-install-packages.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-launch-index.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-lxd.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-mount-points.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-ntp.txt] PASSED [ 62%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-reporting.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-run-cmds.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-ssh-keys.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-update-apt.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-update-packages.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-user-groups.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-wireguard.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-write-files.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config-yum-repo.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaDocExamples::test_schema_doc_examples[/build/cloud-init/src/cloud-init-22.3.3/doc/examples/cloud-config.txt] PASSED [ 63%] tests/unittests/config/test_schema.py::TestStrictMetaschema::test_modules PASSED [ 63%] tests/unittests/config/test_schema.py::TestStrictMetaschema::test_validate_bad_module PASSED [ 63%] tests/unittests/config/test_schema.py::TestMeta::test_valid_meta_for_every_module PASSED [ 63%] tests/unittests/config/test_schema.py::TestSchemaFuzz::test_validate_full_schema <- ../../../../usr/lib/python3.10/unittest/mock.py SKIPPED (No python-hypothesis-jsonschema dependency present.) [ 63%] tests/unittests/config/test_schema.py::TestHandleSchemaArgs::test_handle_schema_args_annotate_deprecated_config[True-#cloud-config\npackages:\n- htop\napt_update: true\t\t# D1\napt_upgrade: true\t\t# D2\napt_reboot_if_required: true\t\t# D3\n\n# Deprecations: -------------\n# D1: DEPRECATED: Dropped after April 2027. Use ``package_update``. Default: ``false``\n# D2: DEPRECATED: Dropped after April 2027. Use ``package_upgrade``. Default: ``false``\n# D3: DEPRECATED: Dropped after April 2027. Use ``package_reboot_if_required``. Default: ``false``\n\n\nValid cloud-config: {}\n] PASSED [ 63%] tests/unittests/config/test_schema.py::TestHandleSchemaArgs::test_handle_schema_args_annotate_deprecated_config[False-Cloud config schema deprecations: apt_reboot_if_required: DEPRECATED: Dropped after April 2027. Use ``package_reboot_if_required``. Default: ``false``, apt_update: DEPRECATED: Dropped after April 2027. Use ``package_update``. Default: ``false``, apt_upgrade: DEPRECATED: Dropped after April 2027. Use ``package_upgrade``. Default: ``false``\nValid cloud-config: {}\n] PASSED [ 63%] tests/unittests/distros/test_arch.py::TestArch::test_get_distro PASSED [ 63%] tests/unittests/distros/test_arch.py::TestRenderNetwork::test_basic_static PASSED [ 63%] tests/unittests/distros/test_bsd_utils.py::TestBsdUtils::test_get_rc_config_value PASSED [ 63%] tests/unittests/distros/test_bsd_utils.py::TestBsdUtils::test_set_rc_config_value PASSED [ 63%] tests/unittests/distros/test_bsd_utils.py::TestBsdUtils::test_set_rc_config_value_unchanged PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_basic PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_groups_with_dict_deprecated PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_groups_with_list PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_groups_with_whitespace_string PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_user_with_ssh_redirect_user_does_not_disable_auth_keys PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_user_with_ssh_redirect_user_no_cloud_keys PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_create_user_with_ssh_redirect_user_with_cloud_keys PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_explicit_no_home_false PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_explicit_sudo_false PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_explicit_sudo_none PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_group_added PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_lock_raises_runtime_if_no_commands PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_lock_with_passwd_if_available PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_lock_with_usermod_if_no_passwd PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_no_home PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_only_new_group_added PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_set_password PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_setup_ssh_authorized_keys_with_integer PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_setup_ssh_authorized_keys_with_list PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_setup_ssh_authorized_keys_with_string PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_system_user PASSED [ 63%] tests/unittests/distros/test_create_users.py::TestCreateUser::test_unlocked PASSED [ 63%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_falseish_locale_raises_valueerror PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_no_regen_on_c_utf8 PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_no_rerun PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_rerun_if_different PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_rerun_if_no_file PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_rerun_on_mismatched_keys PASSED [ 64%] tests/unittests/distros/test_debian.py::TestDebianApplyLocale::test_rerun_on_unset_system_locale PASSED [ 64%] tests/unittests/distros/test_debian.py::TestPackageCommand::test_simple_command PASSED [ 64%] tests/unittests/distros/test_debian.py::TestPackageCommand::test_wait_for_lock PASSED [ 64%] tests/unittests/distros/test_debian.py::TestPackageCommand::test_lock_wait_timeout PASSED [ 64%] tests/unittests/distros/test_debian.py::TestPackageCommand::test_lock_exception_wait PASSED [ 64%] tests/unittests/distros/test_debian.py::TestPackageCommand::test_lock_exception_timeout PASSED [ 64%] tests/unittests/distros/test_dragonflybsd.py::test_find_dragonflybsd_part PASSED [ 64%] tests/unittests/distros/test_dragonflybsd.py::test_parse_mount PASSED [ 64%] tests/unittests/distros/test_freebsd.py::TestDeviceLookUp::test_find_freebsd_part_gpt PASSED [ 64%] tests/unittests/distros/test_freebsd.py::TestDeviceLookUp::test_find_freebsd_part_label PASSED [ 64%] tests/unittests/distros/test_freebsd.py::TestDeviceLookUp::test_get_path_dev_freebsd_label PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_arch_package_mirror_info_known PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_arch_package_mirror_info_unknown PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_expire_passwd_freebsd_uses_pw_command PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_expire_passwd_uses_chpasswd PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_get_locale_rhel PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_get_locale_ubuntu PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_sudoers_ensure_append PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_sudoers_ensure_new PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_sudoers_ensure_only_one_includedir PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_sudoers_ensure_rules PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_sudoers_ensure_rules_list PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_systemd_in_use PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_systemd_not_in_use PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGenericDistro::test_systemd_symlink PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_az_ec2[True-ec2-mirrors0] PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_az_ec2[True-other-mirrors1] PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_az_ec2[False-ec2-mirrors2] PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_az_ec2[False-other-mirrors3] PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_az_non_ec2 PASSED [ 64%] tests/unittests/distros/test_generic.py::TestGetPackageMirrors::test_get_package_mirror_info_none PASSED [ 64%] tests/unittests/distros/test_gentoo.py::TestGentoo::test_write_existing_hostname_with_comments PASSED [ 64%] tests/unittests/distros/test_gentoo.py::TestGentoo::test_write_hostname PASSED [ 64%] tests/unittests/distros/test_hostname.py::TestHostnameHelper::test_adjust_hostname PASSED [ 64%] tests/unittests/distros/test_hostname.py::TestHostnameHelper::test_no_adjust_hostname PASSED [ 64%] tests/unittests/distros/test_hostname.py::TestHostnameHelper::test_parse_same PASSED [ 64%] tests/unittests/distros/test_hosts.py::TestHostsHelper::test_add PASSED [ 64%] tests/unittests/distros/test_hosts.py::TestHostsHelper::test_del PASSED [ 64%] tests/unittests/distros/test_hosts.py::TestHostsHelper::test_parse PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_get_package_mirror_info_failsafe[mirror_info0-expected0] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_get_package_mirror_info_failsafe[mirror_info1-expected1] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_get_package_mirror_info_failsafe[mirror_info2-expected2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_get_package_mirror_info_failsafe[mirror_info3-expected3] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_failsafe_used_if_all_search_results_filtered_out PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[fk-fake-1f-None-patterns0-expected0-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[fk-fake-1f-None-patterns1-expected1-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk-fake-1-patterns2-expected2-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[fake-fake-1f-None-patterns3-expected3-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fake-region-patterns4-expected4-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-\u0422\u03b5\u0405\u0422\u0323-patterns5-expected5-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-\u0422\u03b5\u0405\u0422\u0323-patterns6-expected6-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-\u0422\u03b5\u0405\u0422\u0323-patterns7-expected7-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk-fake-1-patterns8-expected8-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk-fake-1-patterns9-expected9-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-inv[lid-patterns10-expected10-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None--some-region--patterns11-expected11-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x00fake\x001-patterns12-expected12-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x01fake\x011-patterns13-expected13-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x02fake\x021-patterns14-expected14-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x03fake\x031-patterns15-expected15-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x04fake\x041-patterns16-expected16-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x05fake\x051-patterns17-expected17-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x06fake\x061-patterns18-expected18-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x07fake\x071-patterns19-expected19-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x08fake\x081-patterns20-expected20-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x0bfake\x0b1-patterns21-expected21-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x0cfake\x0c1-patterns22-expected22-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x0efake\x0e1-patterns23-expected23-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x0ffake\x0f1-patterns24-expected24-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x10fake\x101-patterns25-expected25-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x11fake\x111-patterns26-expected26-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x12fake\x121-patterns27-expected27-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x13fake\x131-patterns28-expected28-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x14fake\x141-patterns29-expected29-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x15fake\x151-patterns30-expected30-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x16fake\x161-patterns31-expected31-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x17fake\x171-patterns32-expected32-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x18fake\x181-patterns33-expected33-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x19fake\x191-patterns34-expected34-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1afake\x1a1-patterns35-expected35-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1bfake\x1b1-patterns36-expected36-True-ec2] PASSED [ 65%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1cfake\x1c1-patterns37-expected37-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1dfake\x1d1-patterns38-expected38-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1efake\x1e1-patterns39-expected39-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\x1ffake\x1f1-patterns40-expected40-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk fake 1-patterns41-expected41-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk!fake!1-patterns42-expected42-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk"fake"1-patterns43-expected43-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk$fake$1-patterns44-expected44-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk%fake%1-patterns45-expected45-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk&fake&1-patterns46-expected46-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk'fake'1-patterns47-expected47-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk(fake(1-patterns48-expected48-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk)fake)1-patterns49-expected49-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk*fake*1-patterns50-expected50-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk+fake+1-patterns51-expected51-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk,fake,1-patterns52-expected52-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk;fake;1-patterns53-expected53-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fkfake>1-patterns56-expected56-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk\\fake\\1-patterns57-expected57-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk^fake^1-patterns58-expected58-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk_fake_1-patterns59-expected59-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk`fake`1-patterns60-expected60-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk{fake{1-patterns61-expected61-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk|fake|1-patterns62-expected62-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk}fake}1-patterns63-expected63-True-ec2] PASSED [ 66%] tests/unittests/distros/test_init.py::TestGetPackageMirrorInfo::test_valid_substitution[None-fk~fake~1-patterns64-expected64-True-ec2] PASSED [ 66%] tests/unittests/distros/test_manage_service.py::TestManageService::test_manage_service_service_initcmd PASSED [ 66%] tests/unittests/distros/test_manage_service.py::TestManageService::test_manage_service_systemctl PASSED [ 66%] tests/unittests/distros/test_manage_service.py::TestManageService::test_manage_service_systemctl_initcmd PASSED [ 66%] tests/unittests/distros/test_netbsd.py::test_init[True] PASSED [ 66%] tests/unittests/distros/test_netbsd.py::test_init[False] PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroFreeBSD::test_apply_network_config_freebsd_ifrename PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroFreeBSD::test_apply_network_config_freebsd_nameserver PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroFreeBSD::test_apply_network_config_freebsd_standard PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuEni::test_apply_network_config_and_bringup_activator_defaults_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuEni::test_apply_network_config_and_bringup_filters_priority_eni_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuEni::test_apply_network_config_eni_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuEni::test_apply_network_config_ipv6_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuNetplan::test_apply_network_config_v1_ipv6_to_netplan_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuNetplan::test_apply_network_config_v1_to_netplan_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuNetplan::test_apply_network_config_v2_full_passthrough_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroUbuntuNetplan::test_apply_network_config_v2_passthrough_ub PASSED [ 66%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroRedhat::test_apply_network_config_ipv6_rh PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroRedhat::test_apply_network_config_rh PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroRedhat::test_vlan_render PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroRedhat::test_vlan_render_unsupported PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroOpensuse::test_apply_network_config_ipv6_opensuse PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroOpensuse::test_apply_network_config_opensuse PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroArch::test_apply_network_config_v1_with_netplan PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroArch::test_apply_network_config_v1_without_netplan PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroPhoton::test_photon_network_config_v1 PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroPhoton::test_photon_network_config_v1_with_duplicates PASSED [ 67%] tests/unittests/distros/test_netconfig.py::TestNetCfgDistroPhoton::test_photon_network_config_v2 PASSED [ 67%] tests/unittests/distros/test_networking.py::TestBSDNetworkingIsPhysical::test_raises_notimplementederror PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingIsPhysical::test_returns_false_by_default PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingIsPhysical::test_returns_false_if_devname_exists_but_not_physical PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingIsPhysical::test_returns_true_if_device_is_physical PASSED [ 67%] tests/unittests/distros/test_networking.py::TestBSDNetworkingTrySetLinkUp::test_raises_notimplementederror PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingTrySetLinkUp::test_calls_subp_return_true PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingTrySetLinkUp::test_calls_subp_return_false PASSED [ 67%] tests/unittests/distros/test_networking.py::TestBSDNetworkingSettle::test_settle_doesnt_error PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingSettle::test_no_arguments PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingSettle::test_exists_argument PASSED [ 67%] tests/unittests/distros/test_networking.py::TestNetworkingWaitForPhysDevs::test_skips_settle_if_all_present PASSED [ 67%] tests/unittests/distros/test_networking.py::TestNetworkingWaitForPhysDevs::test_calls_udev_settle_on_missing PASSED [ 67%] tests/unittests/distros/test_networking.py::TestNetworkingWaitForPhysDevs::test_retrying_and_strict_behaviour[True-expectation0] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestNetworkingWaitForPhysDevs::test_retrying_and_strict_behaviour[False-expectation1] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingApplyNetworkCfgNames::test_apply_renames[v1] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingApplyNetworkCfgNames::test_apply_renames[v2] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingApplyNetworkCfgNames::test_apply_v2_renames_skips_without_setname_or_mac[without_setname] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingApplyNetworkCfgNames::test_apply_v2_renames_skips_without_setname_or_mac[without_mac] PASSED [ 67%] tests/unittests/distros/test_networking.py::TestLinuxNetworkingApplyNetworkCfgNames::test_apply_v2_renames_raises_runtime_error_on_unknown_version PASSED [ 67%] tests/unittests/distros/test_opensuse.py::TestopenSUSE::test_get_distro PASSED [ 67%] tests/unittests/distros/test_photon.py::TestPhoton::test_fallback_netcfg PASSED [ 67%] tests/unittests/distros/test_photon.py::TestPhoton::test_get_distro PASSED [ 67%] tests/unittests/distros/test_photon.py::TestPhoton::test_network_renderer PASSED [ 67%] tests/unittests/distros/test_photon.py::TestPhoton::test_write_hostname PASSED [ 67%] tests/unittests/distros/test_resolv.py::TestResolvHelper::test_local_domain PASSED [ 67%] tests/unittests/distros/test_resolv.py::TestResolvHelper::test_nameservers PASSED [ 67%] tests/unittests/distros/test_resolv.py::TestResolvHelper::test_parse_same PASSED [ 67%] tests/unittests/distros/test_resolv.py::TestResolvHelper::test_search_domains PASSED [ 67%] tests/unittests/distros/test_sles.py::TestSLES::test_get_distro PASSED [ 67%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_add_new PASSED [ 67%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_adjust PASSED [ 67%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_empty PASSED [ 67%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_no_adjust_shell PASSED [ 67%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_no_change PASSED [ 68%] tests/unittests/distros/test_sysconfig.py::TestSysConfHelper::test_parse_shell_vars PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_add_user_on_snappy_system PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_basic_groups PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_create_snap_user PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_create_snap_user_known PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_csv_groups PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_group_dict PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_member_groups PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_more_groups PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_dict PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_dict_default PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_dict_default_additional PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_dict_extract PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_dict_trans PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_old_user PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_simple PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_simple_csv PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_simple_dict PASSED [ 68%] tests/unittests/distros/test_user_data_normalize.py::TestUGNormalize::test_users_simple_dict_no PASSED [ 68%] tests/unittests/filters/test_launch_index.py::TestLaunchFilter::testConfigEmailIndex PASSED [ 68%] tests/unittests/filters/test_launch_index.py::TestLaunchFilter::testHeaderEmailIndex PASSED [ 68%] tests/unittests/filters/test_launch_index.py::TestLaunchFilter::testIndexes PASSED [ 68%] tests/unittests/filters/test_launch_index.py::TestLaunchFilter::testMultiEmailIndex PASSED [ 68%] tests/unittests/filters/test_launch_index.py::TestLaunchFilter::testNoneIndex PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestParseDHCPLeasesFile::test_parse_empty_lease_file_errors PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestParseDHCPLeasesFile::test_parse_malformed_lease_file_content_errors PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestParseDHCPLeasesFile::test_parse_multiple_leases PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPRFC3442::test_obtain_centos_lease_parses_static_routes PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPRFC3442::test_obtain_lease_parses_static_routes PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPRFC3442::test_parse_lease_finds_classless_static_routes PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPRFC3442::test_parse_lease_finds_rfc3442_classless_static_routes PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_bogus_width_returns_empty_list PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_class_c_b_a PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_default_route PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_invalid_input_returns_empty_list PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_logs_error_truncated PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_returns_valid_routes_until_parse_err PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_single_ip PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_parse_static_routes_single_ip_handles_trailing_semicolon PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_redhat_format PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_redhat_format_with_a_space_too_much_after_comma PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPParseStaticRoutes::test_unspecified_gateway PASSED [ 68%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_absent_dhclient_command PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhclient_run_with_tmpdir PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhcp_discovery_outside_sandbox PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhcp_discovery_run_in_sandbox PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhcp_discovery_run_in_sandbox_waits_on_lease_and_pid PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhcp_discovery_run_in_sandbox_warns_invalid_pid PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_dhcp_output_error_stream PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_no_fallback_nic_found PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestDHCPDiscoveryClean::test_provided_nic_does_not_exist PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestSystemdParseLeases::test_multiple_files PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestSystemdParseLeases::test_no_leases_dir_returns_empty_dict PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestSystemdParseLeases::test_no_leases_returns_empty_dict PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestSystemdParseLeases::test_single_azure_leases_file PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestSystemdParseLeases::test_single_leases_file PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpNoNetworkSetup::test_ephemeral_dhcp_no_network_if_url_connectivity PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpNoNetworkSetup::test_ephemeral_dhcp_setup_network_if_url_connectivity PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_raises_error[NoDHCPLeaseInterfaceError0] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_raises_error[NoDHCPLeaseInterfaceError1] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_raises_error[NoDHCPLeaseMissingDhclientError] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_umbrella_error[NoDHCPLeaseInterfaceError0] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_umbrella_error[NoDHCPLeaseInterfaceError1] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_obtain_lease_umbrella_error[NoDHCPLeaseMissingDhclientError] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_raises_error[NoDHCPLeaseInterfaceError0] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_raises_error[NoDHCPLeaseInterfaceError1] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_raises_error[NoDHCPLeaseMissingDhclientError] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_umbrella_error[NoDHCPLeaseInterfaceError0] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_umbrella_error[NoDHCPLeaseInterfaceError1] PASSED [ 69%] tests/unittests/net/test_dhcp.py::TestEphemeralDhcpLeaseErrors::test_ctx_mgr_umbrella_error[NoDHCPLeaseMissingDhclientError] PASSED [ 69%] tests/unittests/net/test_dns.py::TestNetDns::test_system_mac_address_does_not_break_dns_parsing PASSED [ 69%] tests/unittests/net/test_ephemeral.py::TestEphemeralIPNetwork::test_stack_order[False-False] PASSED [ 69%] tests/unittests/net/test_ephemeral.py::TestEphemeralIPNetwork::test_stack_order[False-True] PASSED [ 69%] tests/unittests/net/test_ephemeral.py::TestEphemeralIPNetwork::test_stack_order[True-False] PASSED [ 69%] tests/unittests/net/test_ephemeral.py::TestEphemeralIPNetwork::test_stack_order[True-True] PASSED [ 69%] tests/unittests/net/test_init.py::TestSysDevPath::test_sys_dev_path PASSED [ 69%] tests/unittests/net/test_init.py::TestSysDevPath::test_sys_dev_path_without_path PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_get_master PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_is_bond PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_is_bridge PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_is_up_false PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_is_up_true PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_is_vlan PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_master_is_bridge_or_bond PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_master_is_openvswitch PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_errors_on_translation_failures PASSED [ 69%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_handles_error_with_on_enoent PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_handles_handles_with_onkeyerror PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_int_returns_integer_from_content PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_int_returns_none_on_error PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_int_returns_none_on_valueerror PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_reraises_oserror PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_safe_false_on_translate_failure PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_safe_returns_false_on_noent_failure PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_strips_contents_of_sys_path PASSED [ 70%] tests/unittests/net/test_init.py::TestReadSysNet::test_read_sys_net_translates_content PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_config_skips_bonds PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_config_skips_bridges PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_config_skips_netfail_devs PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_config_skips_veth PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_finds_connected_eth_with_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_finds_dormant_eth_with_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGenerateFallbackConfig::test_generate_fallback_finds_eth_by_operstate PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindFallBackNic::test_generate_fallback_finds_first_connected_eth_with_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_ignored_interfaces PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_carrier_preferred PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_natural_sort PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_with_carrier PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[dormant-False] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[dormant-True] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[down-False] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[down-True] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[lowerlayerdown-False] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[lowerlayerdown-True] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[unknown-False] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_eth0_preferred_after_carrier[unknown-True] PASSED [ 70%] tests/unittests/net/test_init.py::TestNetFindCandidateNics::test_no_nics PASSED [ 70%] tests/unittests/net/test_init.py::TestGetDeviceList::test_get_devicelist_empty_with_no_devices_in_sys_net PASSED [ 70%] tests/unittests/net/test_init.py::TestGetDeviceList::test_get_devicelist_empty_without_sys_net PASSED [ 70%] tests/unittests/net/test_init.py::TestGetDeviceList::test_get_devicelist_lists_any_subdirectories_in_sys_net PASSED [ 70%] tests/unittests/net/test_init.py::TestGetDeviceList::test_get_devicelist_raise_oserror PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interface_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interface_mac_false_with_no_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interface_mac_grabs_bonding_address PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_by_mac_skips_empty_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_by_mac_skips_master_devs PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_by_mac_skips_missing_mac PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_by_mac_skips_netfailvoer PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_does_not_skip_phys_members_of_bridges_and_bonds PASSED [ 70%] tests/unittests/net/test_init.py::TestGetInterfaceMAC::test_get_interfaces_empty_list_without_sys_net PASSED [ 71%] tests/unittests/net/test_init.py::TestInterfaceHasOwnMAC::test_interface_has_own_mac_false_when_stolen PASSED [ 71%] tests/unittests/net/test_init.py::TestInterfaceHasOwnMAC::test_interface_has_own_mac_strict_errors_on_absent_assign_type PASSED [ 71%] tests/unittests/net/test_init.py::TestInterfaceHasOwnMAC::test_interface_has_own_mac_true_when_not_stolen PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_errors_invalid_mask_prefix PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_errors_on_missing_params PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_noop_when_configured PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_performs_teardown PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_with_new_default_route PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_with_prefix PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_network_with_rfc3442_static_routes PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV4Network::test_ephemeral_ipv4_no_network_if_url_connectivity PASSED [ 71%] tests/unittests/net/test_init.py::TestEphemeralIPV6Network::test_ephemeral_ipv6_network_performs_setup PASSED [ 71%] tests/unittests/net/test_init.py::TestHasURLConnectivity::test_true_on_url_connectivity_failure PASSED [ 71%] tests/unittests/net/test_init.py::TestHasURLConnectivity::test_true_on_url_connectivity_success PASSED [ 71%] tests/unittests/net/test_init.py::TestHasURLConnectivity::test_true_on_url_connectivity_timeout PASSED [ 71%] tests/unittests/net/test_init.py::TestHasURLConnectivity::test_url_timeout_on_connectivity_check PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_extract_physdevs_looks_up_devid_v1 PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_extract_physdevs_looks_up_devid_v2 PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_extract_physdevs_looks_up_driver_v1 PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_extract_physdevs_looks_up_driver_v2 PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_get_v1_type_physical PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_get_v2_type_physical PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_get_v2_type_physical_skips_if_no_set_name PASSED [ 71%] tests/unittests/net/test_init.py::TestExtractPhysdevs::test_runtime_error_on_unknown_netcfg_version PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_get_dev_features PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_get_dev_features_none_returns_empty_string PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_has_netfail_standby_feature PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_has_netfail_standby_feature_no_features_is_false PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_has_netfail_standby_feature_not_present_is_false PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_has_netfail_standby_feature_short_is_false PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_master PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_master_checks_master_attr PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_master_has_master_attr PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_master_no_standby_feat PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_master_wrong_driver PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_primary PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_primary_bad_master PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_primary_no_master PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_primary_no_standby PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_primary_wrong_driver PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_standby PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_standby_no_master PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_standby_no_standby_feature PASSED [ 71%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfail_standby_wrong_driver PASSED [ 72%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfailover_primary PASSED [ 72%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfailover_returns_false PASSED [ 72%] tests/unittests/net/test_init.py::TestNetFailOver::test_is_netfailover_standby PASSED [ 72%] tests/unittests/net/test_init.py::TestOpenvswitchIsInstalled::test_mirrors_which_result[True-/some/path] PASSED [ 72%] tests/unittests/net/test_init.py::TestOpenvswitchIsInstalled::test_mirrors_which_result[False-None] PASSED [ 72%] tests/unittests/net/test_init.py::TestOpenvswitchIsInstalled::test_only_calls_which_once PASSED [ 72%] tests/unittests/net/test_init.py::TestGetOVSInternalInterfaces::test_command_used PASSED [ 72%] tests/unittests/net/test_init.py::TestGetOVSInternalInterfaces::test_subp_contents_split_and_returned PASSED [ 72%] tests/unittests/net/test_init.py::TestGetOVSInternalInterfaces::test_database_connection_error_handled_gracefully PASSED [ 72%] tests/unittests/net/test_init.py::TestGetOVSInternalInterfaces::test_other_errors_raised PASSED [ 72%] tests/unittests/net/test_init.py::TestGetOVSInternalInterfaces::test_only_runs_once PASSED [ 72%] tests/unittests/net/test_init.py::TestIsOpenVSwitchInternalInterface::test_false_if_ovs_not_installed PASSED [ 72%] tests/unittests/net/test_init.py::TestIsOpenVSwitchInternalInterface::test_return_value_based_on_detected_interfaces[detected_interfaces0-devname-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsOpenVSwitchInternalInterface::test_return_value_based_on_detected_interfaces[detected_interfaces1-devname-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsOpenVSwitchInternalInterface::test_return_value_based_on_detected_interfaces[detected_interfaces2-devname-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsOpenVSwitchInternalInterface::test_return_value_based_on_detected_interfaces[detected_interfaces3-ours-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpAddress::test_is_ip_address[ValueError-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpAddress::test_is_ip_address[-True0] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpAddress::test_is_ip_address[-False0] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpAddress::test_is_ip_address[-True1] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpAddress::test_is_ip_address[-False1] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpv4Address::test_is_ip_address[ipv4address_mock0-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpv4Address::test_is_ip_address[ipv4address_mock1-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-192.168.1.1-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-192.168.1.1/24-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-192.168.1.1/32-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-192.168.1.1/33-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-2001:67c:1-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-2001:67c:1/32-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-2001:67c::-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ip_network-2001:67c::/32-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv4_network-192.168.1.1-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv4_network-192.168.1.1/24-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv4_network-2001:67c::-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv4_network-2001:67c::/32-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-192.168.1.1-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-192.168.1.1/24-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c:1-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c:1/32-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c::-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c::/32-True] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c::/129-False] PASSED [ 72%] tests/unittests/net/test_init.py::TestIsIpNetwork::test_is_ip_network[is_ipv6_network-2001:67c::/128-True] PASSED [ 72%] tests/unittests/net/test_net_rendering.py::test_convert[no_matching_mac_v2-Renderer.NetworkManager|Netplan] PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_empty_v1_config_gets_network_state PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_empty_v2_config_gets_network_state PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_missing_version_returns_none PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_unknown_versions_returns_none PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_valid_config_gets_network_state PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfig::test_version_2_passes_self_as_config PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseConfigV2::test_version_2_ignores_renderer_key PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseNameservers::test_v1_nameservers_valid PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseNameservers::test_v1_nameservers_invalid PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateParseNameservers::test_v2_nameservers PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_all_bits_ipv4 PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_all_bits_ipv6 PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_ipv4 PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_ipv4_object PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_ipv6 PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_ipv6_object PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_raises_value_error PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_to_many_bits_ipv4 PASSED [ 73%] tests/unittests/net/test_network_state.py::TestNetworkStateHelperFunctions::test_mask_to_net_prefix_to_many_bits_ipv6 PASSED [ 73%] tests/unittests/net/test_networkd.py::TestNetworkdRenderState::test_networkd_render_with_set_name PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportStartEvent::test_report_start_event_passes_something_with_as_string_to_handlers PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportFinishEvent::test_invalid_result_raises_attribute_error PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportFinishEvent::test_report_finish_event_passes_something_with_as_string_to_handlers PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportFinishEvent::test_reporting_successful_finish_has_sensible_string_repr PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportFinishEvent::test_reporting_unsuccessful_finish_has_sensible_string_repr PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEvent::test_as_dict PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEvent::test_as_string PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestFinishReportingEvent::test_as_has_result PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestFinishReportingEvent::test_has_result_with_optional_post_files PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestBaseReportingHandler::test_base_reporting_handler_is_abstract PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestLogHandler::test_appropriate_logger_used PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestLogHandler::test_log_message_uses_event_as_string PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestLogHandler::test_single_log_message_at_info_published PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestDefaultRegisteredHandler::test_log_handler_registered_by_default PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingConfiguration::test_empty_configuration_doesnt_add_handlers PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingConfiguration::test_handler_config_not_modified PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingConfiguration::test_handlers_removed_if_falseish_specified PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingConfiguration::test_looks_up_handler_by_type_and_adds_it PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingConfiguration::test_uses_non_type_parts_of_config_dict_as_kwargs PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_child_fullname_respects_parent PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_child_result_bubbles_up PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_finish_exception_defaults_fail PASSED [ 73%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_message_updatable PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_message_used_in_finish PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_reporting_child_default_to_parent PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_reporting_disabled_does_not_report_events PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_reporting_event_has_sane_repr PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_result_on_exception_used PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_set_invalid_result_raises_value_error PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingEventStack::test_start_and_finish_success PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestStatusAccess::test_invalid_status_access_raises_value_error PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config0-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config1-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config2-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config3-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config4-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config5-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config6-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config7-None] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config8-'a' is not of type 'object'] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config9-'b' is not of type 'object'] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config10-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config11-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config12-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config13-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config14-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config15-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config16-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config17-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting.py::TestReportingSchema::test_schema_validation[config18-not valid] PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TestKvpEncoding::test_encode_decode PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_event_very_long PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_events_with_higher_incarnation_not_over_written PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_file_operation_issue PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_finish_event_result_is_logged PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_get_boot_telemetry PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_get_system_info PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_not_truncate_kvp_file_modified_after_boot PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_push_log_to_kvp PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_push_log_to_kvp_exception_handling PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_report_compressed_event PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_report_diagnostic_event_with_logger_func PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_report_diagnostic_event_without_logger_func PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_truncate_stale_kvp_file PASSED [ 74%] tests/unittests/reporting/test_reporting_hyperv.py::TextKvpReporter::test_unique_kvp_key PASSED [ 74%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_webhook_handler PASSED [ 74%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_404 PASSED [ 75%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_background_processing PASSED [ 75%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_failures_cancel_flush[2-2-False] PASSED [ 75%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_failures_cancel_flush[3-3-True] PASSED [ 75%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_failures_cancel_flush[50-3-True] PASSED [ 75%] tests/unittests/reporting/test_webhook_handler.py::TestWebHookHandler::test_multiple_failures_no_flush PASSED [ 75%] tests/unittests/runs/test_merge_run.py::TestMergeRun::test_none_ds PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_forces_run_via_unverified_modules PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_populates_var_lib_cloud PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_run_with_no_config_modules PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_runs_modules_which_distros_all PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_runs_modules_which_do_not_define_distros PASSED [ 75%] tests/unittests/runs/test_simple_run.py::TestSimpleRun::test_none_ds_skips_modules_which_define_unmatched_distros PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestAliYunDatasource::test_parse_public_keys PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestAliYunDatasource::test_returns_false_when_not_on_aliyun PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestAliYunDatasource::test_route_metric_calculated_without_device_number PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestAliYunDatasource::test_with_mock_server PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestIsAliYun::test_false_on_empty_string PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestIsAliYun::test_false_on_unknown_string PASSED [ 75%] tests/unittests/sources/test_aliyun.py::TestIsAliYun::test_true_on_aliyun_product PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetCloudType::test_cloud_info_file PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetCloudType::test_cloud_info_file_ioerror PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetCloudType::test_rhev PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetCloudType::test_unknown PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetCloudType::test_vsphere PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataCloudInfoFile::test_fail_rhev PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataCloudInfoFile::test_fail_vsphere PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataCloudInfoFile::test_rhev PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataCloudInfoFile::test_unrecognized PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataCloudInfoFile::test_vsphere PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataNoCloudInfoFile::test_failure_no_cloud_file PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataNoCloudInfoFile::test_rhev_no_cloud_file PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestGetDataNoCloudInfoFile::test_vsphere_no_cloud_file PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataRhevm::test_modprobe_fails PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataRhevm::test_mount_cb_fails PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataRhevm::test_no_modprobe_cmd PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataRhevm::test_no_udevadm_cmd PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataRhevm::test_udevadm_fails PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataVsphere::test_user_data_vsphere_mcb_fail PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataVsphere::test_user_data_vsphere_no_cdrom PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestUserDataVsphere::test_user_data_vsphere_success PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestReadUserDataCallback::test_callback_both PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestReadUserDataCallback::test_callback_dc PASSED [ 75%] tests/unittests/sources/test_altcloud.py::TestReadUserDataCallback::test_callback_non_dc PASSED [ 76%] tests/unittests/sources/test_altcloud.py::TestReadUserDataCallback::test_callback_none PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGenerateNetworkConfig::test_parsing_scenarios[simple interface-metadata0-expected0] PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGenerateNetworkConfig::test_parsing_scenarios[multiple interfaces with increasing route metric-metadata1-expected1] PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGenerateNetworkConfig::test_parsing_scenarios[secondary IPv4s are static-metadata2-expected2] PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGenerateNetworkConfig::test_parsing_scenarios[ipv6 secondaries-metadata3-expected3] PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGenerateNetworkConfig::test_match_hv_netvsc PASSED [ 76%] tests/unittests/sources/test_azure.py::TestNetworkConfig::test_single_ipv4_nic_configuration PASSED [ 76%] tests/unittests/sources/test_azure.py::TestNetworkConfig::test_uses_fallback_cfg_when_apply_network_config_is_false PASSED [ 76%] tests/unittests/sources/test_azure.py::TestNetworkConfig::test_uses_fallback_cfg_when_imds_metadata_unset PASSED [ 76%] tests/unittests/sources/test_azure.py::TestNetworkConfig::test_uses_fallback_cfg_when_no_network_metadata PASSED [ 76%] tests/unittests/sources/test_azure.py::TestNetworkConfig::test_uses_fallback_cfg_when_no_interface_metadata PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_default_metadata_uses_instance_url PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_metadata_from_imds_empty_when_no_imds_present PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_metadata_from_imds_retries_on_timeout PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_metadata_performs_dhcp_when_network_is_down PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_metadata_uses_extended_url PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_metadata_uses_instance_url PASSED [ 76%] tests/unittests/sources/test_azure.py::TestGetMetadataFromIMDS::test_get_network_metadata_uses_network_url PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_availability_zone_set_from_imds PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_basic_dev_file PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_basic_seed_dir PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_blacklist_through_distro PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_call_imds_once_no_reprovision PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_call_imds_twice_with_reprovision PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_exc_should_log_could_not_crawl_msg PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_exception_returns_no_datasource PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_exception_should_report_failure_with_msg PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_on_reprovision_reports_ready PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_on_reprovision_reports_ready_using_lease PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_raises_invalid_metadata_on_error PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_returns_structured_data_and_caches_nothing PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_crawl_metadata_waits_for_nic_on_savable_vms PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_data_dir_without_imds_data PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_default_ephemeral_configs_ephemeral_does_not_exist PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_default_ephemeral_configs_ephemeral_exists PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_disable_password_from_imds PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_description_msg PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_no_description_msg PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_no_net_uses_new_ephemeral_dhcp_lease PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_returns_false_and_does_not_propagate_exc PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_returns_true_when_report_succeeds PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_failure_uses_cached_ephemeral_dhcp_ctx_lease PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_ready_failure_reports_telemetry PASSED [ 76%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_dsaz_report_ready_returns_true_when_report_succeeds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_exception_fetching_fabric_data_doesnt_propagate PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_fabric_data_included_in_metadata PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_data_non_ubuntu_will_not_remove_network_scripts PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_data_on_ubuntu_will_not_remove_network_scripts_disabled PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_data_on_ubuntu_will_remove_network_scripts PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_public_ssh_keys_with_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_public_ssh_keys_with_no_openssh_format PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_public_ssh_keys_without_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_get_resource_disk PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_hostname_from_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_imds_api_version_wanted_exists PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_imds_api_version_wanted_nonexistent PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_instance_id_case_insensitive PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_instance_id_endianness PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_instance_id_from_dmidecode_used PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_instance_id_from_dmidecode_used_for_builtin PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_key_endswith_crlf_valid PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_key_with_crlf_invalid PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_key_without_crlf_valid PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_list_possible_azure_ds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_network_config_set_from_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_network_config_set_from_imds_for_secondary_nic_no_ip PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_network_config_set_from_imds_route_metric_for_secondary_nic PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_no_password_with_disable_ssh_pw_auth_false PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_no_password_with_disable_ssh_pw_auth_true PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_no_password_with_disable_ssh_pw_auth_unspecified PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_not_is_platform_viable_seed_should_return_no_datasource PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_ovf_can_include_unicode PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_ovf_env_arrives_in_waagent_dir PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_password_given PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_password_redacted_in_ovf PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_password_with_disable_ssh_pw_auth_false PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_password_with_disable_ssh_pw_auth_true PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_password_with_disable_ssh_pw_auth_unspecified PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_platform_viable_but_no_devs_should_return_no_datasource PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_region_set_from_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_sys_cfg_set_never_destroy_ntfs PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_user_not_locked_if_password_redacted PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_userdata_arrives PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_userdata_found PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_userdata_from_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_userdata_from_imds_with_customdata_from_OVF PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_username_from_imds PASSED [ 77%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_username_used PASSED [ 78%] tests/unittests/sources/test_azure.py::TestAzureDataSource::test_waagent_d_has_0700_perms PASSED [ 78%] tests/unittests/sources/test_azure.py::TestLoadAzureDsDir::test_missing_ovf_env_xml_raises_non_azure_datasource_error PASSED [ 78%] tests/unittests/sources/test_azure.py::TestLoadAzureDsDir::test_wb_invalid_ovf_env_xml_calls_read_azure_ovf PASSED [ 78%] tests/unittests/sources/test_azure.py::TestReadAzureOvf::test_invalid_xml_raises_non_azure_ds PASSED [ 78%] tests/unittests/sources/test_azure.py::TestReadAzureOvf::test_load_with_pubkeys PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_never_destroy_ntfs_config_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_no_partitions_is_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_ntfs_mount_errors_true PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_one_partition_not_ntfs_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_one_partition_ntfs_empty_is_true PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_one_partition_ntfs_empty_with_dataloss_file_is_true PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_one_partition_ntfs_populated_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_one_partition_through_realpath_is_true PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_three_partition_through_realpath_is_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_three_partitions_is_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_two_partitions_not_ntfs_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_two_partitions_ntfs_empty_is_true PASSED [ 78%] tests/unittests/sources/test_azure.py::TestCanDevBeReformatted::test_two_partitions_ntfs_populated_false PASSED [ 78%] tests/unittests/sources/test_azure.py::TestClearCachedData::test_clear_cached_attrs_clears_imds PASSED [ 78%] tests/unittests/sources/test_azure.py::TestAzureNetExists::test_azure_net_must_exist_for_legacy_objpkl PASSED [ 78%] tests/unittests/sources/test_azure.py::TestPreprovisioningReadAzureOvfFlag::test_read_azure_ovf_with_false_flag PASSED [ 78%] tests/unittests/sources/test_azure.py::TestPreprovisioningReadAzureOvfFlag::test_read_azure_ovf_with_running_type PASSED [ 78%] tests/unittests/sources/test_azure.py::TestPreprovisioningReadAzureOvfFlag::test_read_azure_ovf_with_savable_type PASSED [ 78%] tests/unittests/sources/test_azure.py::TestPreprovisioningReadAzureOvfFlag::test_read_azure_ovf_with_true_flag PASSED [ 78%] tests/unittests/sources/test_azure.py::TestPreprovisioningReadAzureOvfFlag::test_read_azure_ovf_without_flag PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg0-imds_md0-PPSType.NONE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg1-imds_md1-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg2-imds_md2-PPSType.SAVABLE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg3-imds_md3-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg4-imds_md4-PPSType.NONE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg5-imds_md5-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg6-imds_md6-PPSType.SAVABLE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg7-imds_md7-PPSType.NONE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg8-imds_md8-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg9-imds_md9-PPSType.SAVABLE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_without_reprovision_marker[ovf_cfg10-imds_md10-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg0-imds_md0-PPSType.NONE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg1-imds_md1-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg2-imds_md2-PPSType.SAVABLE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg3-imds_md3-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg4-imds_md4-PPSType.NONE] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg5-imds_md5-PPSType.RUNNING] PASSED [ 78%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg6-imds_md6-PPSType.SAVABLE] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg7-imds_md7-PPSType.NONE] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg8-imds_md8-PPSType.RUNNING] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg9-imds_md9-PPSType.SAVABLE] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestDeterminePPSTypeScenarios::test_determine_pps_with_reprovision_marker[ovf_cfg10-imds_md10-PPSType.RUNNING] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestReprovision::test_reprovision_calls__poll_imds PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_check_if_nic_is_primary_retries_on_failures PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_detect_nic_attach_reports_ready_and_waits_for_detach PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_wait_for_all_nics_ready_raises_if_socket_fails PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_wait_for_link_up_checks_link_after_sleep PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_wait_for_link_up_returns_if_already_up PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningHotAttachNics::test_wait_for_nic_attach_multinic_attach PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_does_not_poll_imds_report_ready_when_marker_file_exists PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_poll_imds_does_dhcp_on_retries_if_ctx_present PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_poll_imds_re_dhcp_on_timeout PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_poll_imds_report_ready_failure_raises_exc_and_doesnt_write_marker PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_poll_imds_report_ready_success_writes_marker_file PASSED [ 79%] tests/unittests/sources/test_azure.py::TestPreprovisioningPollIMDS::test_poll_imds_skips_dhcp_if_ctx_present PASSED [ 79%] tests/unittests/sources/test_azure.py::TestAzureDataSourcePreprovisioning::test__reprovision_calls__poll_imds PASSED [ 79%] tests/unittests/sources/test_azure.py::TestAzureDataSourcePreprovisioning::test_poll_imds_returns_ovf_env PASSED [ 79%] tests/unittests/sources/test_azure.py::TestRemoveUbuntuNetworkConfigScripts::test_remove_network_scripts_default_removes_stock_scripts PASSED [ 79%] tests/unittests/sources/test_azure.py::TestRemoveUbuntuNetworkConfigScripts::test_remove_network_scripts_only_attempts_removal_if_path_exists PASSED [ 79%] tests/unittests/sources/test_azure.py::TestRemoveUbuntuNetworkConfigScripts::test_remove_network_scripts_removes_both_files_and_directories PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIsPlatformViable::test_true_on_azure_chassis[7783-7084-3265-9085-8269-3286-77] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIsPlatformViable::test_true_on_azure_ovf_env_in_seed_dir PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIsPlatformViable::test_false_on_no_matching_azure_criteria PASSED [ 79%] tests/unittests/sources/test_azure.py::TestRandomSeed::test_non_ascii_seed_is_serializable PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_basic_setup[None] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_basic_setup[fakeEth0] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_basic_setup_without_wireserver_opt[None] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_basic_setup_without_wireserver_opt[fakeEth0] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_no_retry_missing_dhclient_error PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_interface_error PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_process_error PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_sleeps[NoDHCPLeaseInterfaceError] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_sleeps[NoDHCPLeaseError] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_times_out[NoDHCPLeaseInterfaceError] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestEphemeralNetworking::test_retry_times_out[NoDHCPLeaseError] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_basic_scenarios[MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_basic_scenarios[MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_basic_scenarios[MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 79%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error2-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error2-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error2-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error3-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error3-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error3-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error4-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error4-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_retry_errors[error4-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-5-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-5-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-5-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-10-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-10-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error0-10-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-5-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-5-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-5-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-10-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-10-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error1-10-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-5-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 80%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-5-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-5-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-10-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-10-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error2-10-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-5-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-5-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-5-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-10-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-10-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error3-10-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-5-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-5-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-5-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-10-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-10-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_retry_until_failure[error4-10-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error0-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error0-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error0-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error1-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error1-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error1-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error2-MetadataType.ALL-http://169.254.169.254/metadata/instance?api-version=2021-08-01&extended=true] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error2-MetadataType.NETWORK-http://169.254.169.254/metadata/instance/network?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestIMDS::test_will_not_retry_errors[error2-MetadataType.REPROVISION_DATA-http://169.254.169.254/metadata/reprovisiondata?api-version=2021-08-01] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestInstanceId::test_metadata PASSED [ 81%] tests/unittests/sources/test_azure.py::TestInstanceId::test_fallback PASSED [ 81%] tests/unittests/sources/test_azure.py::TestProvisioning::test_no_pps PASSED [ 81%] tests/unittests/sources/test_azure.py::TestProvisioning::test_running_pps PASSED [ 81%] tests/unittests/sources/test_azure.py::TestProvisioning::test_savable_pps PASSED [ 81%] tests/unittests/sources/test_azure.py::TestProvisioning::test_savable_pps_early_unplug[fabric_side_effect0] PASSED [ 81%] tests/unittests/sources/test_azure.py::TestProvisioning::test_savable_pps_early_unplug[fabric_side_effect1] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_savable_pps_early_unplug[fabric_side_effect2] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_recovery_pps[Savable] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_recovery_pps[Running] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_recovery_pps[None] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_os_disk_pps[subp_side_effect0] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestProvisioning::test_os_disk_pps[subp_side_effect1] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[001122aabbcc-00:11:22:aa:bb:cc] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[001122AABBCC-00:11:22:aa:bb:cc] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[00:11:22:aa:bb:cc-00:11:22:aa:bb:cc] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[00:11:22:AA:BB:CC-00:11:22:aa:bb:cc] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[pass-through-the-unexpected-pass-through-the-unexpected] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_normalize_scenarios[-] PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_empty PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_validates_one_nic PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_validates_multiple_nic PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_missing_all PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_missing_primary PASSED [ 82%] tests/unittests/sources/test_azure.py::TestValidateIMDSMetadata::test_missing_secondary PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGetIpFromLeaseValue::test_get_ip_from_lease_value[62:4c:36:20-98.76.54.32] PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGetIpFromLeaseValue::test_get_ip_from_lease_value[4:3:2:1-4.3.2.1] PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGetIpFromLeaseValue::test_get_ip_from_lease_value[bL6 -98.76.54.32] PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGetIpFromLeaseValue::test_get_ip_from_lease_value[dH\\"l-100.72.34.108] PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGetIpFromLeaseValue::test_get_ip_from_lease_value[dH:l-100.72.58.108] PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_certificates_xml_parsed_and_fetched_correctly PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_container_id_parsed_correctly PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_incarnation_parsed_correctly PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_instance_id_byte_swap PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_instance_id_no_byte_swap_diff_instance_id PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_instance_id_no_byte_swap_same_instance_id PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_instance_id_parsed_correctly PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_invalid_goal_state_xml_raises_parse_error PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_missing_certificates_skips_http_get PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_missing_container_id_in_goal_state_xml_raises_exc PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_missing_incarnation_in_goal_state_xml_raises_exc PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestGoalStateParsing::test_missing_instance_id_in_goal_state_xml_raises_exc PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_non_secure_get PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_non_secure_get_raises_exception PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_post PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_post_raises_exception PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_post_with_extra_headers PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_post_with_sleep_with_extra_headers_raises_exception PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_secure_get PASSED [ 82%] tests/unittests/sources/test_azure_helper.py::TestAzureEndpointHttpClient::test_secure_get_raises_exception PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_timeouts[times0-1-5-0] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_timeouts[times1-1-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_timeouts[times2-2-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_timeouts[times3-4-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_timeouts[times4-2-5-10] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_network_unreachable PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_success[times0-1-5-0] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_success[times1-1-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_success[times2-2-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_success[times3-4-5-1] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestHttpWithRetries::test_success[times4-2-5-10] PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestOpenSSLManager::test_clean_up PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestOpenSSLManager::test_generate_certificate_uses_tmpdir PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestOpenSSLManager::test_openssl_manager_creates_a_tmpdir PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestOpenSSLManagerActions::test_parse_certificates SKIPPED (todo move to cloud_test) [ 83%] tests/unittests/sources/test_azure_helper.py::TestOpenSSLManagerActions::test_pubkey_extract SKIPPED (todo move to cloud_test) [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_build_report_conforms_to_length_limits PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_build_report_escapes_chars PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_build_report_for_failure_signal_health_document PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_build_report_for_ready_signal_health_document PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_send_failure_signal_calls_build_report PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_send_failure_signal_sends_post_request PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_send_ready_signal_calls_build_report PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_send_ready_signal_sends_post_request PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestGoalStateHealthReporter::test_trim_description_then_escape_conforms_to_len_limits_worst_case PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_absent_certificates_produces_empty_public_keys PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_certificates_used_to_determine_public_keys PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_clean_up_after_report_failure PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_clean_up_after_report_ready PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_clean_up_can_be_called_at_any_time PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_correct_url_used_for_goalstate_during_report_failure PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_correct_url_used_for_goalstate_during_report_ready PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_correct_url_used_for_report_failure PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_correct_url_used_for_report_ready PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_eject_iso_is_called PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_failure_to_send_report_failure_health_doc_bubbles_up PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_failure_to_send_report_ready_health_doc_bubbles_up PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_fetch_goalstate_during_report_failure_raises_exc_on_get_exc PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_fetch_goalstate_during_report_failure_raises_exc_on_parse_exc PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_fetch_goalstate_during_report_ready_raises_exc_on_get_exc PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_fetch_goalstate_during_report_ready_raises_exc_on_parse_exc PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_goal_state_values_used_for_report_failure PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_goal_state_values_used_for_report_ready PASSED [ 83%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_http_client_does_not_use_certificate_for_report_failure PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_http_client_does_not_use_certificate_for_report_ready PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_openssl_manager_not_instantiated_by_shim_report_status PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_register_with_azure_and_fetch_data_calls_send_ready_signal PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_register_with_azure_and_report_failure_calls_send_failure_signal PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_register_with_azure_and_report_failure_does_not_need_certificates PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_xml_elems_in_report_failure_post PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestWALinuxAgentShim::test_xml_elems_in_report_ready_post PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportReadyToFabric::test_calls_shim_register_with_azure_and_fetch_data PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportReadyToFabric::test_data_from_shim_returned PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportReadyToFabric::test_failure_in_registration_propagates_exc_and_calls_clean_up PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportReadyToFabric::test_instantiates_shim_with_kwargs PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportReadyToFabric::test_success_calls_clean_up PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_failure_in_shim_report_failure_propagates_exc_and_calls_clean_up PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_instantiates_shim_with_kwargs PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_report_failure_to_fabric_empty_desc_calls_shim_report_failure PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_report_failure_to_fabric_with_desc_calls_shim_report_failure PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_report_failure_to_fabric_with_no_desc_calls_shim_report_failure PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestGetMetadataGoalStateXMLAndReportFailureToFabric::test_success_calls_clean_up PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestChassisAssetTag::test_true_azure_cloud PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestChassisAssetTag::test_false_on_nonazure_chassis[None] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestChassisAssetTag::test_false_on_nonazure_chassis[] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestChassisAssetTag::test_false_on_nonazure_chassis[notazure] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected0] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected1] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\nother-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected2] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\ntest-password\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected3] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\nother-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected4] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected5] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\nfp1\npath1\n\n\n\n\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected6] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\nfp1\npath1\n\n\n\nfp2\npath2\nsomevalue\n\n\n\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected7] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\nZm9v\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected8] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\ntrue\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-expected9] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\nfalse\n\n\n\n-expected10] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\ntrue\n\n\n\n-expected11] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_valid_ovf_scenarios[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\ntestpps\n\n\n-expected12] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_missing_required_fields[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-host\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-No ovf-env.xml configuration for 'UserName'] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_missing_required_fields[\n\n\n1.0\n\nLinuxProvisioningConfiguration\ntest-user\n\n\n\n1.0\n\nkms.core.windows.net\nfalse\n\n\n\n\n-No ovf-env.xml configuration for 'HostName'] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_multiple_sections_fails PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_multiple_properties_fails PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_non_azure_ovf PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_invalid_xml[-Invalid ovf-env.xml: no element found: line 1, column 0] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_invalid_xml[-Invalid ovf-env.xml: not well-formed (invalid token): line 1, column 2] PASSED [ 84%] tests/unittests/sources/test_azure_helper.py::TestOvfEnvXml::test_invalid_xml[badxml-Invalid ovf-env.xml: syntax error: line 1, column 0] PASSED [ 84%] tests/unittests/sources/test_bigstep.py::TestBigstep::test_get_data_honor_cloud_dir[False] PASSED [ 85%] tests/unittests/sources/test_bigstep.py::TestBigstep::test_get_data_honor_cloud_dir[True] PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_encoded_user_data PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_get_hostname PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_get_instance_id PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_get_public_ssh_keys PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_lack_of_cloudinit_key_in_vendor_data PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_lack_of_vendor_data PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_metadata PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_platform PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_user_data PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DataSourceCloudSigmaTest::test_vendor_data PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DsLoads::test_get_datasource_list_returns_in_local PASSED [ 85%] tests/unittests/sources/test_cloudsigma.py::DsLoads::test_list_sources_finds_ds PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_bad_request_doesnt_stop_ds_from_working PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_empty_password_doesnt_create_config PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_password_not_saved_if_already_saved PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_password_not_saved_if_bad_request PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_password_not_saved_if_empty PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_password_sets_password PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_saved_password_doesnt_create_config PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestCloudStackPasswordFetching::test_valid_response_means_password_marked_as_saved PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestGetLatestLease::test_ignores_by_extension PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestGetLatestLease::test_selects_dhclient_dash_files PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestGetLatestLease::test_selects_dhclient_dot_files PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestGetLatestLease::test_selects_newest_matching PASSED [ 85%] tests/unittests/sources/test_cloudstack.py::TestGetLatestLease::test_skips_dhcpv6_files PASSED [ 85%] tests/unittests/sources/test_common.py::ExpectedDataSources::test_expected_default_local_sources_found PASSED [ 85%] tests/unittests/sources/test_common.py::ExpectedDataSources::test_expected_default_network_sources_found PASSED [ 85%] tests/unittests/sources/test_common.py::ExpectedDataSources::test_expected_nondefault_network_sources_found PASSED [ 85%] tests/unittests/sources/test_common.py::TestDataSourceInvariants::test_data_sources_have_valid_network_config_sources PASSED [ 85%] tests/unittests/sources/test_common.py::TestDataSourceInvariants::test_expected_dsname_defined PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_dev_ec2_map PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_dev_ec2_remap PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_dev_os_map PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_dev_os_remap PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_dir_valid PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_ec2_metadata PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_find_candidates PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_pubkeys_v2 PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_seed_dir_bad_json_metadata PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_seed_dir_missing PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_seed_dir_no_configdrive PASSED [ 85%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_seed_dir_valid_extra PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConfigDriveDataSource::test_subplatform_config_drive_when_starts_with_dev PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestNetJson::test_network_config_conversion_dhcp6 PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestNetJson::test_network_config_conversions PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestNetJson::test_network_config_is_converted PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestNetJson::test_network_data_is_found PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_bond_conversion PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_conversion_fills_names PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_conversion_with_route PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_conversion_with_tap PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_convert_raises_value_error_on_missing_name PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_convert_reads_system_prefers_name PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_mac_addrs_can_be_upper_case PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_unknown_device_types_accepted PASSED [ 86%] tests/unittests/sources/test_configdrive.py::TestConvertNetworkData::test_vlan PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestDataSourceDigitalOcean::test_metadata PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestDataSourceDigitalOcean::test_multiple_ssh_keys PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestDataSourceDigitalOcean::test_returns_false_not_on_docean PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_convert_without_private PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_correct_gateways_defined PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_networking_defined PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_private_interface_defined PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_public_interface_anchor_ipv4 PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_public_interface_defined PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_public_interface_ipv4 PASSED [ 86%] tests/unittests/sources/test_digitalocean.py::TestNetworkConvert::test_public_interface_ipv6 PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_aws_inaccessible_imds_service_fails_with_retries PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_aws_token_403_fails_without_retries PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_aws_token_redacted PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_classic_instance_false PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_classic_instance_true PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_ec2_get_instance_id_refreshes_identity_on_upgrade PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_ec2_local_performs_dhcp_on_non_bsd PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_ec2_local_returns_false_on_bsd PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_ec2_local_returns_false_on_non_aws PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_get_instance_tags PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_network_config_cached_property_refreshed_on_upgrade PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_network_config_property_is_cached_in_datasource PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_network_config_property_returns_version_2_network_data PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_network_config_property_secondary_private_ips PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_network_config_property_set_dhcp4 PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_unknown_platform_with_strict_false PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_unknown_platform_with_strict_true PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_valid_platform_with_strict_false PASSED [ 86%] tests/unittests/sources/test_ec2.py::TestEc2::test_valid_platform_with_strict_true PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestGetSecondaryAddresses::test_invalid_ipv4_ipv6_cidr_metadata_logged_with_defaults PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestGetSecondaryAddresses::test_md_with_no_secondary_addresses PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestGetSecondaryAddresses::test_md_with_secondary_v4_and_v6_addresses PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_gets_macs_from_get_interfaces_by_mac PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_handles_absent_dhcp4 PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_handles_dhcp4_and_dhcp6 PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_handles_local_v4_and_v6 PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_handles_multiple_nics PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_handles_only_dhcp6 PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_local_only_dhcp4 PASSED [ 87%] tests/unittests/sources/test_ec2.py::TestConvertEc2MetadataNetworkConfig::test_convert_ec2_metadata_network_config_skips_absent_macs PASSED [ 87%] tests/unittests/sources/test_ec2.py::TesIdentifyPlatform::test_identify_e24cloud PASSED [ 87%] tests/unittests/sources/test_ec2.py::TesIdentifyPlatform::test_identify_e24cloud_negative PASSED [ 87%] tests/unittests/sources/test_ec2.py::TesIdentifyPlatform::test_identify_zstack PASSED [ 87%] tests/unittests/sources/test_ec2.py::TesIdentifyPlatform::test_identify_zstack_full_domain_only PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_activate_removes_set_passwords_semaphore PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_get_data PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_get_data_no_password PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_get_data_saved_password PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_non_viable_platform PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_password PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_password_empty PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_password_saved PASSED [ 87%] tests/unittests/sources/test_exoscale.py::TestDatasourceExoscale::test_read_metadata_when_password_server_unreachable PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_block_project_ssh_keys_override PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_cloudinit_ssh_keys PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_connection PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_datasource_doesnt_use_ephemeral_dhcp PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_default_user_ssh_keys PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_get_data_returns_false_if_not_on_gce PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_has_expired PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_instance_ssh_keys_override PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_local_datasource_uses_ephemeral_dhcp PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_metadata PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_metadata_encoding PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_metadata_partial PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_missing_required_keys_return_false PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_no_ssh_keys_metadata PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_only_last_part_of_zone_used_for_availability_zone PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_parse_public_keys_non_ascii PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_publish_host_keys PASSED [ 87%] tests/unittests/sources/test_gce.py::TestDataSourceGCE::test_userdata_no_encoding PASSED [ 87%] tests/unittests/sources/test_hetzner.py::TestDataSourceHetzner::test_not_on_hetzner_returns_false PASSED [ 88%] tests/unittests/sources/test_hetzner.py::TestDataSourceHetzner::test_read_data PASSED [ 88%] tests/unittests/sources/test_hetzner.py::TestMaybeB64Decode::test_raises_error_on_non_bytes[not bytes] PASSED [ 88%] tests/unittests/sources/test_hetzner.py::TestMaybeB64Decode::test_raises_error_on_non_bytes[4] PASSED [ 88%] tests/unittests/sources/test_hetzner.py::TestMaybeB64Decode::test_happy_path[this is my data-this is my data] PASSED [ 88%] tests/unittests/sources/test_hetzner.py::TestMaybeB64Decode::test_happy_path[ZGF0YQ==-data] PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestGetIBMPlatform::test_id_os_code PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestGetIBMPlatform::test_id_os_code_must_match_uuid PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestGetIBMPlatform::test_id_template_live_metadata PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestGetIBMPlatform::test_id_template_prov_metadata PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestGetIBMPlatform::test_id_template_prov_nodata PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_os_code_live PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_os_code_live_no_userdata PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_provisioning_md PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_provisioning_no_metadata PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_provisioning_not_ibm PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestReadMD::test_template_live PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestIsIBMProvisioning::test_config_and_log_no_reference PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestIsIBMProvisioning::test_config_only PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestIsIBMProvisioning::test_config_with_new_log PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestIsIBMProvisioning::test_config_with_old_log PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestIsIBMProvisioning::test_no_config PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestDataSourceIBMCloud::test_get_data_false PASSED [ 88%] tests/unittests/sources/test_ibmcloud.py::TestDataSourceIBMCloud::test_get_data_processes_read_md PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test__get_data_unimplemented PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_clear_cached_attrs_noops_on_clean_cache PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_clear_cached_attrs_of_custom_attrs PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_clear_cached_attrs_resets_cached_attr_class_attributes PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_clear_cached_attrs_skips_non_attr_class_attributes PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_get_url_params_defaults PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_get_url_params_ds_config_override PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_get_url_params_is_zero_or_greater PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_get_url_params_subclassed PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_get_url_uses_defaults_on_errors PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_init PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_datasource_init_gets_ds_cfg_using_dsname PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_fallback_interface_is_discovered PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_fallback_interface_logs_undiscovered PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_base64encodes_unserializable_bytes PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_calls_subclass__get_data PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_does_not_write_instance_data_on_failure PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_handles_redacted_unserializable_content PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_writes_json_instance_data_on_success PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_writes_json_instance_data_sensitive PASSED [ 88%] tests/unittests/sources/test_init.py::TestDataSource::test_get_data_writes_redacted_public_json_instance_data PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_strips_local_hostname_without_domain PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_subclass_support PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_with_fqdn_returns_local_hostname_with_domain PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_without_metadata_prefers_etc_hosts PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_without_metadata_returns_none PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_get_hostname_without_metadata_uses_system_hostname PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_persist_instance_data_writes_canonical_cloud_id_and_symlink PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_persist_instance_data_writes_ec2_metadata_when_set PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_persist_instance_data_writes_network_json_when_set PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_persist_instance_serializes_datasource_pickle PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_str_is_classname PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_update_metadata_only_acts_on_supported_update_events PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_update_metadata_returns_true_on_supported_update_event PASSED [ 89%] tests/unittests/sources/test_init.py::TestDataSource::test_wb_fallback_interface_is_cached PASSED [ 89%] tests/unittests/sources/test_init.py::TestRedactSensitiveData::test_redact_sensitive_data_does_redacts_with_default_string PASSED [ 89%] tests/unittests/sources/test_init.py::TestRedactSensitiveData::test_redact_sensitive_data_noop_when_no_sensitive_keys_present PASSED [ 89%] tests/unittests/sources/test_init.py::TestRedactSensitiveData::test_redact_sensitive_data_redacts_exact_match_name PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_aws_based_on_region_and_cloud_name PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_azure_based_on_region_and_cloud_name PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_returns_cloud_name_on_unknown_region PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_returns_platform_on_none PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_returns_platform_on_unknown_cloud_name PASSED [ 89%] tests/unittests/sources/test_init.py::TestCanonicalCloudID::test_cloud_id_returns_platform_on_unknowns PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[uname_machine0-None-expected0] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[uname_machine1-None-expected1] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[anything-lxc\n-expected2] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[x86_64-kvm\n-expected3] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[ppc64le-kvm\n-expected4] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestGenerateFallbackNetworkConfig::test_net_v2_based_on_network_mode_virt_type_and_uname_machine[s390x-kvm\n-expected5] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestDataSourceLXD::test_platform_info PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestDataSourceLXD::test_subplatform PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestDataSourceLXD::test__get_data PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestDataSourceLXD::test_network_config_when_unset PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestDataSourceLXD::test_network_config_crawled_metadata_no_network_config PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestIsPlatformViable::test_expected_viable[False-None-False] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestIsPlatformViable::test_expected_viable[True-32768-False] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestIsPlatformViable::test_expected_viable[True-49152-True] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestReadMetadata::test_read_metadata_handles_unexpected_content_or_http_status[url_responses0-expected0-logs0] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestReadMetadata::test_read_metadata_handles_unexpected_content_or_http_status[url_responses1-expected1-logs1] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestReadMetadata::test_read_metadata_handles_unexpected_content_or_http_status[url_responses2-expected2-logs2] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestReadMetadata::test_read_metadata_handles_unexpected_content_or_http_status[url_responses3-expected3-logs3] PASSED [ 89%] tests/unittests/sources/test_lxd.py::TestReadMetadata::test_read_metadata_handles_unexpected_content_or_http_status[url_responses4-expected4-logs4] PASSED [ 89%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_dir_invalid PASSED [ 89%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_dir_missing PASSED [ 90%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_dir_none PASSED [ 90%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_dir_valid PASSED [ 90%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_dir_valid_extra PASSED [ 90%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_url_valid PASSED [ 90%] tests/unittests/sources/test_maas.py::TestMAASDataSource::test_seed_url_vendor_data_dict PASSED [ 90%] tests/unittests/sources/test_maas.py::TestGetOauthHelper::test_all_required PASSED [ 90%] tests/unittests/sources/test_maas.py::TestGetOauthHelper::test_other_fields_not_passed_through PASSED [ 90%] tests/unittests/sources/test_maas.py::TestGetIdHash::test_v1_expected PASSED [ 90%] tests/unittests/sources/test_maas.py::TestGetIdHash::test_v1_extra_fields_are_ignored PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_fs_config_lowercase_label PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_fs_config_lowercase_label_search_uppercase PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_fs_config_uppercase_label PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_fs_config_uppercase_label_search_uppercase PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_fs_label PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_metadata_network_config PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_metadata_network_config_over_interfaces PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_metadata_network_interfaces PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_no_datasource_expected PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_nocloud_get_devices_freebsd PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_nocloud_no_vendordata PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_nocloud_seed_dir_non_lxd_platform_is_nocloud PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_nocloud_seed_dir_on_lxd PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_nocloud_seed_with_vendordata PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestNoCloudDataSource::test_seed_in_config PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestParseCommandLineData::test_parse_cmdline_data_none PASSED [ 90%] tests/unittests/sources/test_nocloud.py::TestParseCommandLineData::test_parse_cmdline_data_valid PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_context_parser PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_find_candidates PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_get_data PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_get_data_broken_contextdisk PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_get_data_invalid_identity PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_get_data_non_contextdisk PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_hostname PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_network_interfaces PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_seed_dir_broken_context PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_seed_dir_empty1_context PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_seed_dir_empty2_context PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_seed_dir_non_contextdisk PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_ssh_key PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_user_data_base64_encoding PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_user_data_encoding_required_for_decode PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaDataSource::test_user_data_plain PASSED [ 90%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_context_devname PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_distro_passed_through PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_eth0 PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_eth0_override PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_eth0_v4v6_override PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_gen_conf_dns PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_gen_conf_gateway PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_gen_conf_gateway6 PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_gen_conf_ipv6address PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_gen_conf_mtu PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_field PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_field_emptycontext PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_field_nonecontext PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_field_withdefaultvalue PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_field_withdefaultvalue_emptycontext PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_gateway PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_gateway6 PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip6 PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip6_dual PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip6_prefix PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip6_prefix_emptystring PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip6_ula PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_ip_emptystring PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_mask PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_mask_emptystring PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_mtu PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_nameservers PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_network PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_get_network_emptystring PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestOpenNebulaNetwork::test_multiple_nics PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestParseShellConfig::test_no_seconds PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestGetPhysicalNicsByMac::test[interfaces_by_mac0-physical_devs0-expected_return0] PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestGetPhysicalNicsByMac::test[interfaces_by_mac1-physical_devs1-expected_return1] PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestGetPhysicalNicsByMac::test[interfaces_by_mac2-physical_devs2-expected_return2] PASSED [ 91%] tests/unittests/sources/test_opennebula.py::TestGetPhysicalNicsByMac::test[interfaces_by_mac3-physical_devs3-expected_return3] PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_bad_datasource_meta PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_bad_metadata PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_bad_uuid PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_datasource PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_disabled_datasource PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_local_datasource PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_metadata_invalid PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_network_config_cached PASSED [ 91%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_network_config_disabled_by_datasource_config PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_network_config_from_network_json PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_no_datasource PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_no_ec2 PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_successful PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_userdata_empty PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_vendordata2_empty PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_vendordata2_invalid PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_vendordata_empty PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_vendordata_invalid PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestOpenStackDataSource::test_wb__crawl_metadata_does_not_persist PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_dict_ci_dict PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_dict_ci_list PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_dict_ci_string PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_dict_no_ci PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_list PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_none PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestVendorDataLoading::test_vd_load_string PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_by_proc_1_environ PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_compute_chassis_asset_tag PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_intel_product_name_compute PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_non_intel_x86 PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_nova_chassis_asset_tag PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_opentelekomcloud_chassis_asset_tag PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_oraclecloud_chassis_asset_tag PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_detect_openstack_sapccloud_chassis_asset_tag PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestDetectOpenStack::test_not_detect_openstack_intel_x86_ec2 PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestMetadataReader::test__find_working_version PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestMetadataReader::test__find_working_version_uses_latest PASSED [ 92%] tests/unittests/sources/test_openstack.py::TestMetadataReader::test_read_v2_os_ocata PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_platform_info PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_subplatform_before_fetch PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_platform_info_after_fetch PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_v1_platform_info_after_fetch[1] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_secondary_nics_disabled_by_default PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestDataSourceOracle::test_sys_cfg_can_enable_configure_secondary_nics PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestIsPlatformViable::test_is_platform_viable[OracleCloud.com-True] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestIsPlatformViable::test_is_platform_viable[None-False] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestIsPlatformViable::test_is_platform_viable[LetsGoCubs-False] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_no_secondary_nics_does_not_mutate_input PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_bare_metal_machine_skipped PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_missing_mac_skipped[v1] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_missing_mac_skipped[v2] PASSED [ 92%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_secondary_nic PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_secondary_nic_v2 PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_network_config_log_errors[False-None] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_network_config_log_errors[False-Exception] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_network_config_log_errors[True-None] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFromOpcImds::test_network_config_log_errors[True-Exception] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test_ignore_network_config[bogus] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test_ignore_network_config[unknown_version] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test__ensure_netfailover_safe[checks_v1_type_physical_interfaces] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test__ensure_netfailover_safe[skips_v1_non_phys_interfaces] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test__ensure_netfailover_safe[checks_v2_type_ethernet_interfaces] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test__ensure_netfailover_safe[skips_v2_non_ethernet_interfaces] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test_removes_master_mac_property_v1 PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestNetworkConfigFiltersNetFailover::test_removes_master_mac_property_v2 PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_metadata_returned[2-_mock_v2_urls-instance_data0-True-vnics_data0] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_metadata_returned[2-_mock_v2_urls-instance_data1-False-None] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_metadata_returned[1-_mock_no_v2_urls-instance_data2-True-vnics_data2] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_metadata_returned[1-_mock_no_v2_urls-instance_data3-False-None] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[1-0-expected_body0-expectation0] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[2-0-expected_body1-expectation1] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[3-0-expected_body2-expectation2] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[3-1-expected_body3-expectation3] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[3-2-expected_body4-expectation4] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_retries[3-3-None-expectation5] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestReadOpcMetadata::test_fetch_vnics_error PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_false_if_platform_not_viable[iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_false_if_platform_not_viable[non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[availability-zone-phx-ad-3-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[availability-zone-phx-ad-3-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[launch-index-0-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[launch-index-0-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[local-hostname-instance-20200320-1400-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[local-hostname-instance-20200320-1400-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[instance-id-ocid1.instance.oc1.phx.anyhqljtniwq6syc3nex55sep5w34qbwmw6TRUNCATED-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[instance-id-ocid1.instance.oc1.phx.anyhqljtniwq6syc3nex55sep5w34qbwmw6TRUNCATED-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[name-instance-20200320-1400-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[name-instance-20200320-1400-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[public_keys-ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ truncated-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_metadata_keys_set_correctly[public_keys-ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ truncated-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[_crawled_metadata-expected_value0-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[_crawled_metadata-expected_value0-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[userdata_raw-#!/bin/sh\ntouch /tmp/foo-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[userdata_raw-#!/bin/sh\ntouch /tmp/foo-non-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[system_uuid-my-test-uuid-iscsi] PASSED [ 93%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_attributes_set_correctly[system_uuid-my-test-uuid-non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[None-expected_value0-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[None-expected_value0-non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[-expected_value1-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[-expected_value1-non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[ssh-rsa ... test@test-expected_value2-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[ssh-rsa ... test@test-expected_value2-non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[ssh-rsa ... test@test\nssh-rsa ... test2@test2-expected_value3-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_public_keys_handled_correctly[ssh-rsa ... test@test\nssh-rsa ... test2@test2-expected_value3-non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_missing_user_data_handled_gracefully[iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_missing_user_data_handled_gracefully[non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_missing_metadata_handled_gracefully[iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestCommon_GetDataBehaviour::test_missing_metadata_handled_gracefully[non-iscsi] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNonIscsiRoot_GetDataBehaviour::test_run_net_files PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNonIscsiRoot_GetDataBehaviour::test_read_opc_metadata_called_with_ephemeral_dhcp PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_network_config_cached PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[True-True-expected_set_primary0] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[True-False-expected_set_primary1] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[False-True-expected_set_primary2] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[False-False-expected_set_primary3] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[None-True-expected_set_primary4] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_addition[None-False-expected_set_primary5] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_secondary_nic_failure_isnt_blocking PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_ds_network_cfg_preferred_over_initramfs PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test__add_network_config_from_opc_imds_no_vnics_data[True] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test__add_network_config_from_opc_imds_no_vnics_data[False] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_missing_mac_skipped PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_nics[True] PASSED [ 94%] tests/unittests/sources/test_oracle.py::TestNetworkConfig::test_nics[False] PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_b64_network_config_disable_read_network PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_b64_network_config_enable_read_network PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_b64_userdata PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_no_userdata PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_non_b64_network_config_enable_read_network PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestReadOvfEnv::test_with_non_b64_userdata PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestMarkerFiles::test_false_when_markerid_none PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestMarkerFiles::test_marker_file_setup PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestMarkerFiles::test_markerid_file_exist PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_allow_raw_data_disabled PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_metadata_json PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_metadata_not_found PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_metadata_not_valid PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_metadata_yaml PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_userdata PASSED [ 94%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cloudinit_userdata_not_found PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cust_script_disabled PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_cust_script_enabled PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_false_on_none_dmi_data PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_force_run_post_script_is_yes PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_iso9660_with_network_config PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_non_vmware_seed_platform_info PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_vmware_customization_disabled PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_vmware_customization_enabled PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_vmware_customization_sys_cfg_disabled PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_vmware_guestinfo_with_network_config PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestDatasourceOVF::test_get_data_vmware_seed_platform_info PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_find_already_mounted PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_find_already_mounted_matches_kname PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_find_already_mounted_skips_non_iso9660 PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_false_on_multi_dir_paths PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_non_string_exception PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_none PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_true_on_hd_partitions PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_true_on_valid_relative_paths PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_maybe_cdrom_device_true_on_xvd_partitions PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_mount_cb_called_on_blkdevs_with_iso9660 PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_mount_cb_called_on_blkdevs_with_iso9660_check_regex PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_mount_cb_called_require_iso_false PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportIso9660::test_mount_cb_not_called_no_matches PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportVmwareGuestinfo::test_found_when_guestinfo_present PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportVmwareGuestinfo::test_notfound_and_warns_on_unexpected_exit_code PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportVmwareGuestinfo::test_notfound_if_no_content_but_exit_zero PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportVmwareGuestinfo::test_notfound_on_exit_code_1 PASSED [ 95%] tests/unittests/sources/test_ovf.py::TestTransportVmwareGuestinfo::test_without_vmware_rpctool_returns_notfound PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_continue_on_arping_error PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_generate_network_config PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_gratuitous_arp_run_standard_arping PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_handle_rhel_like_arping PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_seed_read_user_data_callback_empty_file PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_seed_read_user_data_callback_userdata PASSED [ 95%] tests/unittests/sources/test_rbx.py::TestRbxDataSource::test_seed_read_user_data_callback_valid_disk PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestOnScaleway::test_not_on_scaleway PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestOnScaleway::test_on_scaleway_cmdline PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestOnScaleway::test_on_scaleway_dmi PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestOnScaleway::test_on_scaleway_var_run_scaleway PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_metadata_404 PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_metadata_ok PASSED [ 95%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_metadata_rate_limit PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_network_config_cached_none PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_network_config_existing PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_network_config_ipv6_ok PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_network_config_ok PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_network_config_unset PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_ssh_keys_both PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_ssh_keys_empty PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_ssh_keys_only_conf PASSED [ 96%] tests/unittests/sources/test_scaleway.py::TestDataSourceScaleway::test_ssh_keys_only_tags PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_default_ephemeral PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_default_vendor_data PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_disable_iptables_flag PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_hostname PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_hostname_b64 PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_hostname_if_no_sdc_hostname PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_motd_sys_info PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_no_base64 PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_override_disk_aliases PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_platform_info PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_reconfig_network_on_boot PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_root_keys PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_scripts_shebang_not_added PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_scripts_shebanged PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_sdc_hostname_if_no_hostname PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_sdc_nics PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_sdc_scripts PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_sdc_uuid_if_no_hostname_or_sdc_hostname PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_userdata PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_userdata_removed PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_uuid PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestSmartOSDataSource::test_vendor_data_not_default PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestIdentifyFile::test_file_happy_path PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestIdentifyFile::test_returns_none_on_error PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_flush_failure PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_flush_many_timeouts PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_base64_encodes_argument PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_calculates_length_correctly PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_checksums_correctly PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_line_starts_with_v2 PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_reads_a_line PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_returns_None_if_value_not_found PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_returns_valid_value PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_throws_exception_for_incorrect_crc PASSED [ 96%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_throws_exception_for_incorrect_length PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_throws_exception_for_request_id_mismatch PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_uses_appropriate_request_id PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_uses_get_command PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_uses_random_number_for_request_id PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_writes_a_single_line PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_get_metadata_writes_bytes PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_list_metadata_returns_empty_list_if_no_customer_metadata PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_list_metadata_returns_list PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_negotiate PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_negotiate_bad_response PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_negotiate_short_response PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestJoyentMetadataClient::test_serial_open_transport PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple_alt PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple_both_ipv4_ipv6 PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple_dhcp PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple_multi_ip PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_simple_multi_ipv6 PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_convert_with_dns PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_gateways_not_on_all_nics PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestNetworkConversion::test_routes_on_all_nics PASSED [ 97%] tests/unittests/sources/test_smartos.py::TestSerialConcurrency::test_all_keys SKIPPED (Only supported on KVM and bhyve guests under SmartOS) [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudMetadata::test_metadata PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudMetadata::test_returns_false_not_on_upcloud PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudNetworkSetup::test_network_configuration PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudNetworkSetup::test_network_configured_metadata PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudDatasourceLoading::test_get_datasource_list_returns_in_local PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudDatasourceLoading::test_get_datasource_list_returns_in_normal PASSED [ 97%] tests/unittests/sources/test_upcloud.py::TestUpCloudDatasourceLoading::test_list_sources_finds_ds PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMware::test_get_host_info_dual PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMware::test_get_host_info_ipv4 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMware::test_get_host_info_ipv6 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMware::test_no_data_access_method PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMware::test_wait_on_network PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_metadata_b64 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_metadata_base64 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_metadata_gz_b64 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_metadata_gzip_base64 PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_metadata_only PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_userdata_only PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_data_vendordata_only PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_get_subplatform PASSED [ 97%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_metadata_multiple_ssh_keys PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareEnvVars::test_metadata_single_ssh_key PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_ds_valid_on_vmware_platform PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_metadata_b64 PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_metadata_base64 PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_metadata_gz_b64 PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_metadata_gzip_base64 PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_userdata_only PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_data_vendordata_only PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_get_subplatform PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_metadata_multiple_ssh_keys PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo::test_metadata_single_ssh_key PASSED [ 98%] tests/unittests/sources/test_vmware.py::TestDataSourceVMwareGuestInfo_InvalidPlatform::test_ds_invalid_on_non_vmware_platform PASSED [ 98%] tests/unittests/sources/test_vultr.py::TestDataSourceVultr::test_datasource PASSED [ 98%] tests/unittests/sources/test_vultr.py::TestDataSourceVultr::test_interface_seek PASSED [ 98%] tests/unittests/sources/test_vultr.py::TestDataSourceVultr::test_interface_seek_route_check PASSED [ 98%] tests/unittests/sources/test_vultr.py::TestDataSourceVultr::test_network_config PASSED [ 98%] tests/unittests/sources/test_vultr.py::TestDataSourceVultr::test_private_network_config PASSED [ 98%] tests/unittests/sources/helpers/test_cloudsigma.py::CepkoResultTests::test_contains SKIPPED (This test is completely useless) [ 98%] tests/unittests/sources/helpers/test_cloudsigma.py::CepkoResultTests::test_getitem SKIPPED (This test is completely useless) [ 98%] tests/unittests/sources/helpers/test_cloudsigma.py::CepkoResultTests::test_iter SKIPPED (This test is completely useless) [ 98%] tests/unittests/sources/helpers/test_cloudsigma.py::CepkoResultTests::test_len SKIPPED (This test is completely useless) [ 98%] tests/unittests/sources/helpers/test_cloudsigma.py::CepkoResultTests::test_with_list_as_result SKIPPED (This test is completely useless) [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_metadata_fetch_bdm PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_metadata_fetch_key PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_metadata_fetch_no_keys PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_metadata_fetch_with_2_keys PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_metadata_no_security_credentials PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_userdata_fetch PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_userdata_fetch_fail_not_found PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_userdata_fetch_fail_server_dead PASSED [ 98%] tests/unittests/sources/helpers/test_ec2.py::TestEc2Util::test_userdata_fetch_fail_server_not_found PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestCreateBoundNetlinkSocket::test_socket_error_on_create PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestReadNetlinkSocket::test_netlink_read_timeout PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestReadNetlinkSocket::test_read_invalid_socket PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestReadNetlinkSocket::test_read_netlink_socket PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_read_invalid_data_len PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_read_invalid_rta_ifname_none PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_read_invalid_rta_operstate_none PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_read_none_data PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_read_rta_oper_state PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_unpack_rta_attr_invalid_offset PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestParseNetlinkMessage::test_unpack_rta_attr_none_data PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestNicAttachDetach::test_nic_attach_ignore_existing PASSED [ 98%] tests/unittests/sources/helpers/test_netlink.py::TestNicAttachDetach::test_nic_attach_read_first PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestNicAttachDetach::test_nic_attached_oper_down PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestNicAttachDetach::test_nic_attached_oper_up PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestNicAttachDetach::test_nic_detached PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_invalid_msgtype_getlink PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_invalid_msgtype_setlink PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_media_down_up_scenario PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_netlink_invalid_operstate PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_netlink_invalid_switch_scenario PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_netlink_valid_inbetween_transitions PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_read_multiple_netlink_msgs PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_read_partial_netlink_msgs PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_wait_for_media_switch_diff_interface PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_wait_invalid_ifname PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_wait_invalid_rta_attr PASSED [ 99%] tests/unittests/sources/helpers/test_netlink.py::TestWaitForMediaDisconnectConnect::test_wait_invalid_socket PASSED [ 99%] tests/unittests/sources/helpers/test_openstack.py::TestConvertNetJson::test_phy_types PASSED [ 99%] tests/unittests/sources/vmware/test_custom_script.py::TestVmwareCustomScript::test_execute_post_cust PASSED [ 99%] tests/unittests/sources/vmware/test_custom_script.py::TestVmwareCustomScript::test_prepare_custom_script PASSED [ 99%] tests/unittests/sources/vmware/test_guestcust_util.py::TestGuestCustUtil::test_get_tools_config_internal_exception PASSED [ 99%] tests/unittests/sources/vmware/test_guestcust_util.py::TestGuestCustUtil::test_get_tools_config_normal PASSED [ 99%] tests/unittests/sources/vmware/test_guestcust_util.py::TestGuestCustUtil::test_get_tools_config_not_installed PASSED [ 99%] tests/unittests/sources/vmware/test_guestcust_util.py::TestGuestCustUtil::test_set_gc_status PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_config_file_dhcp_2nics PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_config_password PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_config_reset_passwd PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_configfile_static_2nics PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_custom_script PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_datasource_instance_id PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_gen_subnet PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_get_config_dns_suffixes PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_get_config_nameservers PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_get_nics_list_dhcp PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_get_nics_list_static PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_no_default_run_post_script PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_post_gc_status PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_utility_methods PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareConfigFile::test_yes_default_run_post_script PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_a_primary_nic_with_gateway PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_cust_non_primary_nic_with_gateway_ PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_meta_data PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_non_primary_nic_with_gateway PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_non_primary_nic_without_gateway PASSED [ 99%] tests/unittests/sources/vmware/test_vmware_config_file.py::TestVmwareNetConfig::test_user_data PASSED [100%] =================================== FAILURES =================================== ______________________ TestGetProcEnv.test_get_proc_ppid _______________________ self = def test_get_proc_ppid(self): """get_proc_ppid returns correct parent pid value.""" my_pid = os.getpid() my_ppid = os.getppid() > self.assertEqual(my_ppid, util.get_proc_ppid(my_pid)) E AssertionError: 7 != 0 tests/unittests/test_util.py:2465: AssertionError ------------------------------ Captured log call ------------------------------- 2022-09-24 01:16:47 DEBUG cloudinit.util:util.py:1474 Reading from /proc/3005/stat (quiet=True) 2022-09-24 01:16:47 DEBUG cloudinit.util:util.py:1485 Read 117 bytes from /proc/3005/stat 2022-09-24 01:16:47 WARNING cloudinit.util:util.py:2903 Unable to match parent pid of process pid=3005 input: 3005 (python) 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 446652017 0 0 0 0 0 274919864608 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =============================== warnings summary =============================== ../../../../usr/lib/python3.10/site-packages/_pytest/config/__init__.py:1198 /usr/lib/python3.10/site-packages/_pytest/config/__init__.py:1198: PytestRemovedIn8Warning: The --strict option is deprecated, use --strict-markers instead. self.issue_config_time_warning( tests/unittests/cmd/test_main.py: 4 warnings tests/unittests/config/test_cc_apt_pipelining.py: 4 warnings tests/unittests/config/test_cc_bootcmd.py: 1 warning tests/unittests/config/test_cc_growpart.py: 1 warning tests/unittests/config/test_cc_grub_dpkg.py: 1 warning tests/unittests/config/test_cc_mcollective.py: 2 warnings tests/unittests/config/test_cc_mounts.py: 12 warnings tests/unittests/config/test_cc_power_state_change.py: 5 warnings tests/unittests/config/test_cc_runcmd.py: 9 warnings tests/unittests/config/test_cc_scripts_vendor.py: 2 warnings tests/unittests/config/test_cc_set_passwords.py: 3 warnings tests/unittests/config/test_cc_snap.py: 3 warnings tests/unittests/config/test_cc_update_etc_hosts.py: 3 warnings tests/unittests/config/test_cc_users_groups.py: 28 warnings tests/unittests/config/test_schema.py: 145 warnings tests/unittests/reporting/test_reporting.py: 19 warnings /build/cloud-init/src/cloud-init-22.3.3/cloudinit/config/schema.py:341: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead. return next(errors, None) is None -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/unittests/test_util.py::TestGetProcEnv::test_get_proc_ppid - Ass... ===== 1 failed, 4348 passed, 10 skipped, 243 warnings in 333.58s (0:05:33) ===== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix17/build receiving incremental file list cloud-init-22.3.3-1-riscv64-build.log cloud-init-22.3.3-1-riscv64-check.log cloud-init-22.3.3-1-riscv64-prepare.log sent 81 bytes received 69,055 bytes 19,753.14 bytes/sec total size is 650,497 speedup is 9.41