[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:25:45.504419Z",
                    "start": "2026-02-28T19:25:43.015922Z"
                },
                "id": "0242ac17-0011-e10d-1f2a-000000000002",
                "name": "localhost"
            },
            "tasks": [
                {
                    "hosts": {
                        "localhost": {
                            "action": "gather_facts",
                            "ansible_facts": {
                                "ansible_apparmor": {
                                    "status": "disabled"
                                },
                                "ansible_architecture": "x86_64",
                                "ansible_bios_date": "NA",
                                "ansible_bios_vendor": "NA",
                                "ansible_bios_version": "NA",
                                "ansible_board_asset_tag": "NA",
                                "ansible_board_name": "NA",
                                "ansible_board_serial": "NA",
                                "ansible_board_vendor": "NA",
                                "ansible_board_version": "NA",
                                "ansible_chassis_asset_tag": "NA",
                                "ansible_chassis_serial": "NA",
                                "ansible_chassis_vendor": "NA",
                                "ansible_chassis_version": "NA",
                                "ansible_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": "ttyS0",
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_date_time": {
                                    "date": "2026-02-28",
                                    "day": "28",
                                    "epoch": "1772306743",
                                    "epoch_int": "1772306743",
                                    "hour": "19",
                                    "iso8601": "2026-02-28T19:25:43Z",
                                    "iso8601_basic": "20260228T192543596558",
                                    "iso8601_basic_short": "20260228T192543",
                                    "iso8601_micro": "2026-02-28T19:25:43.596558Z",
                                    "minute": "25",
                                    "month": "02",
                                    "second": "43",
                                    "time": "19:25:43",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Saturday",
                                    "weekday_number": "6",
                                    "weeknumber": "08",
                                    "year": "2026"
                                },
                                "ansible_devices": {},
                                "ansible_distribution": "Debian",
                                "ansible_distribution_major_version": "12",
                                "ansible_distribution_release": "bookworm",
                                "ansible_distribution_version": "12",
                                "ansible_dns": {
                                    "nameservers": [
                                        "127.0.0.11"
                                    ],
                                    "options": {
                                        "edns0": true,
                                        "ndots": "0",
                                        "trust-ad": true
                                    },
                                    "search": [
                                        "openstacklocal"
                                    ]
                                },
                                "ansible_domain": "",
                                "ansible_effective_group_id": 0,
                                "ansible_effective_user_id": 0,
                                "ansible_env": {
                                    "ANSIBLE_CONFIG": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work",
                                    "HOSTNAME": "0a8996d2b663",
                                    "LANG": "C.UTF-8",
                                    "PATH": "/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                                    "PWD": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base",
                                    "PYTHONPATH": "/var/lib/zuul/ansible/9",
                                    "PYTHON_SHA256": "8d3ed8ec5c88c1c95f5e558612a725450d2452813ddad5e58fdb1a53b1209b78",
                                    "PYTHON_VERSION": "3.11.14",
                                    "SSH_AGENT_PID": "1798127",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-YqxtVc90m5I0/agent.1798126",
                                    "TMP": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "0a8996d2b663",
                                "ansible_hostname": "0a8996d2b663",
                                "ansible_hostnqn": "",
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.15.0-130-generic",
                                "ansible_kernel_version": "#140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024",
                                "ansible_loadavg": {
                                    "15m": 2.09912109375,
                                    "1m": 2.85498046875,
                                    "5m": 2.18408203125
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 5293,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 18575,
                                        "used": 13515
                                    },
                                    "real": {
                                        "free": 5293,
                                        "total": 32090,
                                        "used": 26797
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 228264513,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 35676204,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 64773633,
                                        "inode_total": 67108864,
                                        "inode_used": 2335231,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 934971445248,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9291170,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31310410,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16814892,
                                        "inode_total": 20643840,
                                        "inode_used": 3828948,
                                        "mount": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 38056632320,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "0a8996d2b663",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": [
                                        "tty1",
                                        "ttyS0"
                                    ],
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_processor": [
                                    "0",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "1",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "2",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "3",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "4",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "5",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "6",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "7",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "8",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "9",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "10",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "11",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "12",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "13",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "14",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "15",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 16,
                                "ansible_processor_nproc": 16,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 16,
                                "ansible_product_name": "NA",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "NA",
                                "ansible_python": {
                                    "executable": "/usr/local/lib/zuul/ansible/9/bin/python",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 14,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        14,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.14",
                                "ansible_real_group_id": 0,
                                "ansible_real_user_id": 0,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "bwrap",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": "N/A",
                                "ansible_system_capabilities_enforced": "N/A",
                                "ansible_system_vendor": "NA",
                                "ansible_uptime_seconds": 35970473,
                                "ansible_user_dir": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work",
                                "ansible_user_gecos": "root",
                                "ansible_user_gid": 0,
                                "ansible_user_id": "root",
                                "ansible_user_shell": "/bin/bash",
                                "ansible_user_uid": 0,
                                "ansible_userspace_architecture": "x86_64",
                                "ansible_userspace_bits": "64",
                                "ansible_virtualization_role": "host",
                                "ansible_virtualization_tech_guest": [],
                                "ansible_virtualization_tech_host": [
                                    "kvm"
                                ],
                                "ansible_virtualization_type": "kvm",
                                "gather_subset": [
                                    "all"
                                ],
                                "module_setup": true
                            },
                            "changed": false,
                            "deprecations": [],
                            "warnings": []
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:43.924911Z",
                            "start": "2026-02-28T19:25:43.023313Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:43.946182Z",
                            "start": "2026-02-28T19:25:43.929059Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "27b/oss/27b80feb9aa4445caf5ba4a729588145"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:43.987119Z",
                            "start": "2026-02-28T19:25:43.958655Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.16\nJob: ansible-collection-kubernetes-molecule-aio-rockylinux-9\nPipeline: check\nExecutor: 0a8996d2b663\nTriggered by: https://github.com/vexxhost/ansible-collection-kubernetes/pull/228\nEvent ID: 26d2ab50-14db-11f1-80cc-4ed984950f1c\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:44.045709Z",
                            "start": "2026-02-28T19:25:43.994708Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000009",
                        "name": "Print job information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": false,
                                    "failed": false,
                                    "msg": "# Node Information\nInventory Hostname: controller\nHostname: np0000157485\nUsername: zuul\nDistro: Rocky 9.7\nProvider: yul1\nRegion: ca-ymq-1\nLabel: rockylinux-9\nProduct Name: OpenStack Nova\nInterface IP: 162.253.55.204\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:44.148667Z",
                            "start": "2026-02-28T19:25:44.051230Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info",
                                    "state": "absent"
                                }
                            },
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 493,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:44.587370Z",
                            "start": "2026-02-28T19:25:44.157707Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "e0dc61251ad40b8786768bcd069557e4db247882",
                            "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "e0dc61251ad40b8786768bcd069557e4db247882",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/zuul-info",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/.ansible/tmp/ansible-tmp-1772306744.6256583-84-112405162911292/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "5e6e256dc47150d3399fc2141daf9686",
                            "mode": "0644",
                            "owner": "root",
                            "size": 31192,
                            "src": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/.ansible/tmp/ansible-tmp-1772306744.6256583-84-112405162911292/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:45.504419Z",
                            "start": "2026-02-28T19:25:44.592911Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:25:54.117702Z",
                    "start": "2026-02-28T19:25:45.524157Z"
                },
                "id": "0242ac17-0011-e10d-1f2a-000000000011",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "stat",
                            "changed": false,
                            "failed_when_result": false,
                            "invocation": {
                                "module_args": {
                                    "checksum_algorithm": "sha1",
                                    "follow": false,
                                    "get_attributes": true,
                                    "get_checksum": true,
                                    "get_mime": true,
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:45.770299Z",
                            "start": "2026-02-28T19:25:45.532597Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000018",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:45.811983Z",
                            "start": "2026-02-28T19:25:45.775703Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000019",
                        "name": "Create a new key in workspace based on build UUID"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-keygen",
                                "-t",
                                "rsa",
                                "-N",
                                "",
                                "-C",
                                "zuul-build-sshkey",
                                "-f",
                                "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.773868",
                            "end": "2026-02-28 19:25:47.031526",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa -b 3072",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-e10d-1f2a-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-02-28 19:25:46.257658",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa.pub\nThe key fingerprint is:\nSHA256:FoVt3lbRkrsU/6DmEwuR3X+Eqsj6nXh8Eht2YKoAX4s zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|         o.   .+ |\n|        ..o   = .|\n|        .o + o * |\n|  .   .  .* + * o|\n|   o o .So + + =.|\n|    E ... = * . +|\n|     . o + X o  .|\n|      . oo*.=    |\n|      .oo.oo .   |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:FoVt3lbRkrsU/6DmEwuR3X+Eqsj6nXh8Eht2YKoAX4s zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|         o.   .+ |",
                                "|        ..o   = .|",
                                "|        .o + o * |",
                                "|  .   .  .* + * o|",
                                "|   o o .So + + =.|",
                                "|    E ... = * . +|",
                                "|     . o + X o  .|",
                                "|      . oo*.=    |",
                                "|      .oo.oo .   |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0011-e10d-1f2a-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:47.075406Z",
                            "start": "2026-02-28T19:25:45.836715Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:47.108316Z",
                            "start": "2026-02-28T19:25:47.079827Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000009d",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:47.163431Z",
                            "start": "2026-02-28T19:25:47.132838Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000bc",
                        "name": "Remove previously added zuul-build-sshkey"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDkgFmORKYO0sIwqE9/X077+BV9LgKGyAnWBn7DqmsxqC0jEMHstsQxIF8hzgh+l+N5ERaGvSmiCtnth9eHQOi/2kqY0vw1FnbQrcdSVZWHG3QKnypBAhWU3GLbvOurIdeJJlXD4vgBuXlzYAxS5diejYrvR1P32qfElKm3bQPVGoRvGIxpPleJEbTx+mb0dbnHBtR8AEqnbiiFVaxAcX58XPUrSTBQxCGISbGL2gn0/W2q8mSFCQYz1LFzmsT/X+c+Ps8sVlKnQxmsKT5SwuHv2sfXleJqHLHNGS3yXg+ZnHzU4IARrmCP6+qPhgjqenR5lcXVFQR1bbnw9U/OZJtmf1BlXCKurMU1jKkJDuSqsYL7Dp+cHHhHaJTViSWwbV3rIX+YryG8+jron8c8w+lV0RcPuhRja4tOBJOWafN6jF/h5fB/8RsOSXals5gInLSxRIB1dFHGAaGVrfwR4VPvRgzjKiouCit4xu8cCIMd52a+vwZHJHKbb64RPcS3KoU= zuul-build-sshkey",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "present",
                                    "user": "zuul",
                                    "validate_certs": true
                                }
                            },
                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDkgFmORKYO0sIwqE9/X077+BV9LgKGyAnWBn7DqmsxqC0jEMHstsQxIF8hzgh+l+N5ERaGvSmiCtnth9eHQOi/2kqY0vw1FnbQrcdSVZWHG3QKnypBAhWU3GLbvOurIdeJJlXD4vgBuXlzYAxS5diejYrvR1P32qfElKm3bQPVGoRvGIxpPleJEbTx+mb0dbnHBtR8AEqnbiiFVaxAcX58XPUrSTBQxCGISbGL2gn0/W2q8mSFCQYz1LFzmsT/X+c+Ps8sVlKnQxmsKT5SwuHv2sfXleJqHLHNGS3yXg+ZnHzU4IARrmCP6+qPhgjqenR5lcXVFQR1bbnw9U/OZJtmf1BlXCKurMU1jKkJDuSqsYL7Dp+cHHhHaJTViSWwbV3rIX+YryG8+jron8c8w+lV0RcPuhRja4tOBJOWafN6jF/h5fB/8RsOSXals5gInLSxRIB1dFHGAaGVrfwR4VPvRgzjKiouCit4xu8cCIMd52a+vwZHJHKbb64RPcS3KoU= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "present",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:47.682872Z",
                            "start": "2026-02-28T19:25:47.181728Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000bd",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/.ssh"
                                },
                                "before": {
                                    "path": "/home/zuul/.ssh"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 448,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/.ssh",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0700",
                            "owner": "zuul",
                            "path": "/home/zuul/.ssh",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:47.957724Z",
                            "start": "2026-02-28T19:25:47.690065Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "cf8ff09e02f2f180fd4f69cfc5edb31ea82da17d",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "27b80feb9aa4445caf5ba4a729588145_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "cf8ff09e02f2f180fd4f69cfc5edb31ea82da17d",
                                    "content": null,
                                    "dest": "/home/zuul/.ssh/id_rsa",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": false,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 384,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306748.0553-190-137523674598922/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "f8c1b3ca274c5401b19f0cb0ea8d6071",
                            "mode": "0600",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306748.0553-190-137523674598922/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:48.890784Z",
                            "start": "2026-02-28T19:25:47.962228Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "bd0d4dd1c6deda689ff04e339e5b96d0cdc0cafa",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "27b80feb9aa4445caf5ba4a729588145_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "bd0d4dd1c6deda689ff04e339e5b96d0cdc0cafa",
                                    "content": null,
                                    "dest": "/home/zuul/.ssh/id_rsa.pub",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": false,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306748.9955423-200-247041926059347/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "7dbcaee4771a833c7e0d46c6c7ceaf65",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:ssh_home_t:s0",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306748.9955423-200-247041926059347/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:49.879113Z",
                            "start": "2026-02-28T19:25:48.907679Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000c0",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:49.910403Z",
                            "start": "2026-02-28T19:25:49.884170Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000009e",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/etc/zuul/id_rsa"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:50.273889Z",
                            "start": "2026-02-28T19:25:49.919833Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa"
                            ],
                            "delta": "0:00:00.015288",
                            "end": "2026-02-28 19:25:50.557980",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-e10d-1f2a-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-02-28 19:25:50.542692",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/27b80feb9aa4445caf5ba4a729588145_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0011-e10d-1f2a-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:50.601707Z",
                            "start": "2026-02-28T19:25:50.286407Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:51.017123Z",
                            "start": "2026-02-28T19:25:50.606521Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000ac",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:51.045909Z",
                            "start": "2026-02-28T19:25:51.021141Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-0000000000ad",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:51.486730Z",
                            "start": "2026-02-28T19:25:51.057971Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000001d",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result",
                            "changed": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:52.605727Z",
                            "start": "2026-02-28T19:25:51.494169Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-00000000001e",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/logs",
                                    "state": "absent",
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "state": "absent",
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/docs",
                                    "state": "absent",
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:53.364186Z",
                            "start": "2026-02-28T19:25:52.618337Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000022",
                        "name": "Empty Zuul Output directories by removing them"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/logs",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/docs",
                                    "secontext": "unconfined_u:object_r:user_home_t:s0",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-e10d-1f2a-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:54.117702Z",
                            "start": "2026-02-28T19:25:53.369519Z"
                        },
                        "id": "0242ac17-0011-e10d-1f2a-000000000024",
                        "name": "Ensure Zuul Output directories exist"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 8,
            "failures": 0,
            "ignored": 0,
            "ok": 15,
            "rescued": 0,
            "skipped": 3,
            "unreachable": 0
        },
        "localhost": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 6,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": true
},
{
    "branch": "main",
    "index": "1",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-jobs/playbooks/molecule/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:25:58.234279Z",
                    "start": "2026-02-28T19:25:54.886528Z"
                },
                "id": "0242ac17-0011-c668-4bc7-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.unarchive",
                            "changed": true,
                            "dest": "/usr/local/bin",
                            "extract_results": {
                                "cmd": [
                                    "/bin/gtar",
                                    "--extract",
                                    "-C",
                                    "/usr/local/bin",
                                    "-z",
                                    "--show-transformed-names",
                                    "--strip-components=1",
                                    "-f",
                                    "/home/zuul/.ansible/tmp/ansible-tmp-1772306755.0017858-5-262799143297323/uv-x86_64-unknown-linux-gnu814it9to.tar.gz"
                                ],
                                "err": "",
                                "out": "",
                                "rc": 0
                            },
                            "gid": 0,
                            "group": "root",
                            "handler": "TgzArchive",
                            "invocation": {
                                "module_args": {
                                    "attributes": null,
                                    "copy": true,
                                    "creates": "/usr/local/bin/uv",
                                    "decrypt": true,
                                    "dest": "/usr/local/bin",
                                    "exclude": [],
                                    "extra_opts": [
                                        "--strip-components=1"
                                    ],
                                    "group": null,
                                    "include": [],
                                    "io_buffer_size": 65536,
                                    "keep_newer": false,
                                    "list_files": false,
                                    "mode": null,
                                    "owner": null,
                                    "remote_src": true,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "https://github.com/astral-sh/uv/releases/download/0.8.13/uv-x86_64-unknown-linux-gnu.tar.gz",
                                    "unsafe_writes": false,
                                    "validate_certs": true
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "secontext": "system_u:object_r:bin_t:s0",
                            "size": 4096,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306755.0017858-5-262799143297323/uv-x86_64-unknown-linux-gnu814it9to.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-c668-4bc7-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:57.671524Z",
                            "start": "2026-02-28T19:25:54.898684Z"
                        },
                        "id": "0242ac17-0011-c668-4bc7-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.016065",
                            "end": "2026-02-28 19:25:57.503896",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/local/bin/uv --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-c668-4bc7-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-02-28 19:25:57.487831",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0011-c668-4bc7-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-c668-4bc7-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:25:58.234279Z",
                            "start": "2026-02-28T19:25:57.712535Z"
                        },
                        "id": "0242ac17-0011-c668-4bc7-000000000008",
                        "name": "Print version"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/vexxhost/zuul-jobs/playbooks/molecule/run.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:31:34.038754Z",
                    "start": "2026-02-28T19:25:59.008605Z"
                },
                "id": "0242ac17-0011-2a79-7e65-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "e0dc61251ad40b8786768bcd069557e4db247882",
                            "dest": "src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "e0dc61251ad40b8786768bcd069557e4db247882",
                                    "content": null,
                                    "dest": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306759.1229243-5-178737464144906/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "5e6e256dc47150d3399fc2141daf9686",
                            "mode": "0644",
                            "owner": "zuul",
                            "secontext": "unconfined_u:object_r:user_home_t:s0",
                            "size": 31192,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1772306759.1229243-5-178737464144906/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:26:00.363649Z",
                            "start": "2026-02-28T19:25:59.020276Z"
                        },
                        "id": "0242ac17-0011-2a79-7e65-000000000004",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "after": null,
                                    "attributes": null,
                                    "backup": false,
                                    "before": null,
                                    "encoding": "utf-8",
                                    "group": null,
                                    "mode": null,
                                    "owner": null,
                                    "path": "src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml",
                                    "regexp": "(^\\s*ansible_host:\\s*).*$",
                                    "replace": "\\1\"{{ nodepool.private_ipv4 }}\"",
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "msg": "1 replacements made",
                            "rc": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:26:00.722644Z",
                            "start": "2026-02-28T19:26:00.368327Z"
                        },
                        "id": "0242ac17-0011-2a79-7e65-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "aio"
                            ],
                            "delta": "0:05:31.905744",
                            "end": "2026-02-28 19:31:32.471725",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s aio",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-2a79-7e65-000000000006-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-02-28 19:26:00.565981",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Downloading cpython-3.13.7-linux-x86_64-gnu (download) (30.9MiB)\n Downloading cpython-3.13.7-linux-x86_64-gnu (download)\nUsing CPython 3.13.7\nCreating virtual environment at: .venv\nDownloading cryptography (4.3MiB)\nDownloading pygments (1.2MiB)\nDownloading ansible-core (2.3MiB)\n Downloading cryptography\n Downloading pygments\n Downloading ansible-core\nInstalled 36 packages in 98ms\nINFO     Collection 'vexxhost.kubernetes' detected.\nINFO     Scenarios will be used from 'extensions/molecule'\nCRITICAL 'extensions/molecule/default/molecule.yml' glob failed.  Exiting.\nINFO     default scenario not found, disabling shared state.\nINFO     [aio > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [aio > prerun] Performing prerun with role_name_check=0...\nINFO     [aio > dependency] Executing\nWARNING  [aio > dependency] Missing roles requirements file: requirements.yml\nWARNING  [aio > dependency] Missing collections requirements file: collections.yml\nWARNING  [aio > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [aio > cleanup] Executing\nWARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > destroy] Executing\nWARNING  [aio > destroy] Skipping, '--destroy=never' requested.\nINFO     [aio > destroy] Executed: Successful\nINFO     [aio > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/aio/converge.yml\nINFO     [aio > syntax] Executed: Successful\nINFO     [aio > create] Executing\nWARNING  [aio > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:26:26 +0000 (0:00:00.032)       0:00:00.032 *****\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nSaturday 28 February 2026  19:26:27 +0000 (0:00:01.481)       0:00:01.514 *****\nskipping: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nSaturday 28 February 2026  19:26:27 +0000 (0:00:00.023)       0:00:01.537 *****\n===============================================================================\nGathering Facts --------------------------------------------------------- 1.48s\nInstall Debian packages ------------------------------------------------- 0.02s\nINFO     [aio > prepare] Executed: Successful\nINFO     [aio > converge] Executing\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:26:29 +0000 (0:00:00.016)       0:00:00.016 *****\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nSaturday 28 February 2026  19:26:30 +0000 (0:00:01.113)       0:00:01.130 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nSaturday 28 February 2026  19:26:30 +0000 (0:00:00.704)       0:00:01.834 *****\nok: [controller] => (item=/etc/keepalived/keepalived.conf)\nok: [controller] => (item=/etc/keepalived/check_apiserver.sh)\nok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [controller] => (item=/etc/haproxy/haproxy.cfg)\nok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nSaturday 28 February 2026  19:26:32 +0000 (0:00:01.692)       0:00:03.527 *****\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}\n...ignoring\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nSaturday 28 February 2026  19:26:33 +0000 (0:00:01.077)       0:00:04.604 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nSaturday 28 February 2026  19:26:34 +0000 (0:00:00.439)       0:00:05.044 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nSaturday 28 February 2026  19:26:34 +0000 (0:00:00.314)       0:00:05.358 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nSaturday 28 February 2026  19:26:34 +0000 (0:00:00.027)       0:00:05.386 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nSaturday 28 February 2026  19:26:34 +0000 (0:00:00.037)       0:00:05.424 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nSaturday 28 February 2026  19:26:35 +0000 (0:00:01.277)       0:00:06.701 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nSaturday 28 February 2026  19:26:36 +0000 (0:00:00.346)       0:00:07.048 *****\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:26:36 +0000 (0:00:00.058)       0:00:07.106 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:26:37 +0000 (0:00:00.859)       0:00:07.966 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:26:37 +0000 (0:00:00.123)       0:00:08.090 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nSaturday 28 February 2026  19:26:37 +0000 (0:00:00.039)       0:00:08.129 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:26:37 +0000 (0:00:00.352)       0:00:08.481 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:26:37 +0000 (0:00:00.098)       0:00:08.580 *****\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:26:38 +0000 (0:00:00.909)       0:00:09.489 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:26:38 +0000 (0:00:00.040)       0:00:09.529 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:26:38 +0000 (0:00:00.037)       0:00:09.567 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:26:48 +0000 (0:00:10.217)       0:00:19.785 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:26:48 +0000 (0:00:00.070)       0:00:19.856 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:26:49 +0000 (0:00:00.904)       0:00:20.760 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nSaturday 28 February 2026  19:26:53 +0000 (0:00:03.320)       0:00:24.080 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nSaturday 28 February 2026  19:27:20 +0000 (0:00:27.697)       0:00:51.778 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nSaturday 28 February 2026  19:27:21 +0000 (0:00:00.491)       0:00:52.269 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nSaturday 28 February 2026  19:27:22 +0000 (0:00:00.678)       0:00:52.948 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nSaturday 28 February 2026  19:27:22 +0000 (0:00:00.030)       0:00:52.978 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nSaturday 28 February 2026  19:27:23 +0000 (0:00:00.958)       0:00:53.936 *****\nchanged: [controller] => (item={'path': '/etc/containerd'})\nchanged: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nSaturday 28 February 2026  19:27:24 +0000 (0:00:01.612)       0:00:55.549 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nSaturday 28 February 2026  19:27:25 +0000 (0:00:01.105)       0:00:56.654 *****\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nSaturday 28 February 2026  19:27:25 +0000 (0:00:00.007)       0:00:56.662 *****\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nSaturday 28 February 2026  19:27:26 +0000 (0:00:00.946)       0:00:57.609 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nSaturday 28 February 2026  19:27:27 +0000 (0:00:00.870)       0:00:58.479 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nSaturday 28 February 2026  19:27:28 +0000 (0:00:00.704)       0:00:59.184 *****\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000157485.novalocal's Python /usr/bin/python3. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes_upgrade_check/tasks/main.yml:16:3\n\n14\n15 ---\n16 - name: Retrieve the \"kubeadm-config\" ConfigMap\n     ^ column 3\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000157485.novalocal's Python /usr/bin/python3. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.816)       0:01:00.001 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.035)       0:01:00.037 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.043)       0:01:00.080 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.036)       0:01:00.117 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.037)       0:01:00.154 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.044)       0:01:00.198 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.038)       0:01:00.236 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:27:29 +0000 (0:00:00.043)       0:01:00.280 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:27:30 +0000 (0:00:01.118)       0:01:01.399 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:30 +0000 (0:00:00.044)       0:01:01.444 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:27:30 +0000 (0:00:00.037)       0:01:01.481 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:27:30 +0000 (0:00:00.044)       0:01:01.525 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:27:43 +0000 (0:00:12.808)       0:01:14.334 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:43 +0000 (0:00:00.033)       0:01:14.367 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:43 +0000 (0:00:00.036)       0:01:14.403 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nSaturday 28 February 2026  19:27:43 +0000 (0:00:00.027)       0:01:14.430 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nSaturday 28 February 2026  19:27:44 +0000 (0:00:00.786)       0:01:15.217 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nSaturday 28 February 2026  19:27:44 +0000 (0:00:00.337)       0:01:15.555 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nSaturday 28 February 2026  19:27:45 +0000 (0:00:00.445)       0:01:16.001 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nSaturday 28 February 2026  19:27:45 +0000 (0:00:00.033)       0:01:16.034 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nSaturday 28 February 2026  19:27:46 +0000 (0:00:00.909)       0:01:16.944 *****\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nSaturday 28 February 2026  19:27:47 +0000 (0:00:01.552)       0:01:18.497 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nSaturday 28 February 2026  19:27:48 +0000 (0:00:00.948)       0:01:19.446 *****\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nSaturday 28 February 2026  19:27:48 +0000 (0:00:00.006)       0:01:19.452 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:49 +0000 (0:00:00.499)       0:01:19.951 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:27:49 +0000 (0:00:00.036)       0:01:19.987 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:27:49 +0000 (0:00:00.070)       0:01:20.058 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:27:50 +0000 (0:00:00.843)       0:01:20.901 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:27:51 +0000 (0:00:01.881)       0:01:22.783 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:27:51 +0000 (0:00:00.068)       0:01:22.851 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:27:52 +0000 (0:00:00.795)       0:01:23.647 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nSaturday 28 February 2026  19:27:54 +0000 (0:00:02.218)       0:01:25.865 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nSaturday 28 February 2026  19:27:56 +0000 (0:00:01.053)       0:01:26.919 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:27:56 +0000 (0:00:00.343)       0:01:27.263 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:27:56 +0000 (0:00:00.036)       0:01:27.299 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:27:56 +0000 (0:00:00.066)       0:01:27.366 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:27:57 +0000 (0:00:01.052)       0:01:28.418 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nSaturday 28 February 2026  19:28:00 +0000 (0:00:03.112)       0:01:31.530 *****\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/redhat.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nSaturday 28 February 2026  19:28:00 +0000 (0:00:00.056)       0:01:31.587 *****\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nSaturday 28 February 2026  19:28:01 +0000 (0:00:00.750)       0:01:32.338 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nSaturday 28 February 2026  19:28:01 +0000 (0:00:00.508)       0:01:32.846 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nSaturday 28 February 2026  19:28:02 +0000 (0:00:00.990)       0:01:33.837 *****\nchanged: [controller] => (item=br_netfilter)\nchanged: [controller] => (item=ip_tables)\nchanged: [controller] => (item=ip6_tables)\nok: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:28:04 +0000 (0:00:01.506)       0:01:35.344 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:28:04 +0000 (0:00:00.037)       0:01:35.382 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:28:04 +0000 (0:00:00.041)       0:01:35.423 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:28:11 +0000 (0:00:06.751)       0:01:42.174 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nSaturday 28 February 2026  19:28:11 +0000 (0:00:00.034)       0:01:42.208 *****\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/redhat.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nSaturday 28 February 2026  19:28:11 +0000 (0:00:00.046)       0:01:42.255 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nSaturday 28 February 2026  19:28:12 +0000 (0:00:00.739)       0:01:42.994 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nSaturday 28 February 2026  19:28:17 +0000 (0:00:05.023)       0:01:48.018 *****\nchanged: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nchanged: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nSaturday 28 February 2026  19:28:19 +0000 (0:00:02.463)       0:01:50.482 *****\nchanged: [controller] => (item=/etc/systemd/system/kubelet.service.d)\nok: [controller] => (item=/etc/kubernetes)\nok: [controller] => (item=/etc/kubernetes/manifests)\n\nTASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********\nSaturday 28 February 2026  19:28:20 +0000 (0:00:01.012)       0:01:51.495 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nSaturday 28 February 2026  19:28:21 +0000 (0:00:01.019)       0:01:52.514 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nSaturday 28 February 2026  19:28:22 +0000 (0:00:01.014)       0:01:53.528 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nSaturday 28 February 2026  19:28:23 +0000 (0:00:00.355)       0:01:53.884 *****\n[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\n\nTask failed.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:78:7\n\n76       register: kubelet_swapon\n77\n78     - name: Disable swap\n         ^ column 7\n\n<<< caused by >>>\n\nConditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11\n\n81       ignore_errors: \"{{ ansible_check_mode }}\"\n82       when:\n83         - kubelet_swapon.stdout\n             ^ column 11\n\nBroken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nSaturday 28 February 2026  19:28:23 +0000 (0:00:00.035)       0:01:53.919 *****\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nSaturday 28 February 2026  19:28:23 +0000 (0:00:00.852)       0:01:54.772 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nSaturday 28 February 2026  19:28:24 +0000 (0:00:00.988)       0:01:55.761 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nSaturday 28 February 2026  19:28:25 +0000 (0:00:00.736)       0:01:56.497 *****\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nSaturday 28 February 2026  19:28:25 +0000 (0:00:00.005)       0:01:56.503 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nSaturday 28 February 2026  19:28:26 +0000 (0:00:00.943)       0:01:57.446 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nSaturday 28 February 2026  19:28:27 +0000 (0:00:00.718)       0:01:58.165 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nSaturday 28 February 2026  19:28:27 +0000 (0:00:00.027)       0:01:58.193 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nSaturday 28 February 2026  19:28:28 +0000 (0:00:00.923)       0:01:59.116 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nSaturday 28 February 2026  19:28:28 +0000 (0:00:00.490)       0:01:59.606 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nSaturday 28 February 2026  19:28:28 +0000 (0:00:00.031)       0:01:59.638 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nSaturday 28 February 2026  19:28:28 +0000 (0:00:00.078)       0:01:59.716 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***\nSaturday 28 February 2026  19:28:28 +0000 (0:00:00.079)       0:01:59.795 *****\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nSaturday 28 February 2026  19:28:29 +0000 (0:00:00.359)       0:02:00.155 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nSaturday 28 February 2026  19:28:29 +0000 (0:00:00.045)       0:02:00.201 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nSaturday 28 February 2026  19:28:29 +0000 (0:00:00.052)       0:02:00.253 *****\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nSaturday 28 February 2026  19:28:29 +0000 (0:00:00.039)       0:02:00.292 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:01.033)       0:02:01.326 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.033)       0:02:01.360 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.032)       0:02:01.392 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.032)       0:02:01.424 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.039)       0:02:01.463 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.037)       0:02:01.501 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.034)       0:02:01.535 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nSaturday 28 February 2026  19:28:30 +0000 (0:00:00.037)       0:02:01.573 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nSaturday 28 February 2026  19:29:04 +0000 (0:00:33.798)       0:02:35.372 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nSaturday 28 February 2026  19:29:04 +0000 (0:00:00.386)       0:02:35.758 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nSaturday 28 February 2026  19:29:04 +0000 (0:00:00.026)       0:02:35.785 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nSaturday 28 February 2026  19:29:05 +0000 (0:00:00.339)       0:02:36.124 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nSaturday 28 February 2026  19:29:05 +0000 (0:00:00.326)       0:02:36.451 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nSaturday 28 February 2026  19:29:05 +0000 (0:00:00.357)       0:02:36.808 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nSaturday 28 February 2026  19:29:05 +0000 (0:00:00.038)       0:02:36.847 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nSaturday 28 February 2026  19:29:05 +0000 (0:00:00.033)       0:02:36.880 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nSaturday 28 February 2026  19:29:17 +0000 (0:00:11.027)       0:02:47.907 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nSaturday 28 February 2026  19:29:34 +0000 (0:00:17.065)       0:03:04.973 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nSaturday 28 February 2026  19:29:35 +0000 (0:00:01.151)       0:03:06.125 *****\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.034)       0:03:06.160 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.032)       0:03:06.192 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.037)       0:03:06.230 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.038)       0:03:06.268 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.032)       0:03:06.301 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nSaturday 28 February 2026  19:29:35 +0000 (0:00:00.532)       0:03:06.834 *****\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:29:37 +0000 (0:00:01.245)       0:03:08.080 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:29:38 +0000 (0:00:00.883)       0:03:08.963 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:29:38 +0000 (0:00:00.034)       0:03:08.997 *****\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nSaturday 28 February 2026  19:29:39 +0000 (0:00:01.111)       0:03:10.109 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:29:39 +0000 (0:00:00.376)       0:03:10.485 *****\nok: [controller] => {\n    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:29:39 +0000 (0:00:00.035)       0:03:10.521 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:29:40 +0000 (0:00:00.701)       0:03:11.222 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nSaturday 28 February 2026  19:29:42 +0000 (0:00:02.059)       0:03:13.282 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nSaturday 28 February 2026  19:29:42 +0000 (0:00:00.032)       0:03:13.315 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nSaturday 28 February 2026  19:29:42 +0000 (0:00:00.344)       0:03:13.660 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nSaturday 28 February 2026  19:29:43 +0000 (0:00:00.392)       0:03:14.053 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nSaturday 28 February 2026  19:29:43 +0000 (0:00:00.357)       0:03:14.410 *****\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nSaturday 28 February 2026  19:29:43 +0000 (0:00:00.366)       0:03:14.776 *****\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:29:43 +0000 (0:00:00.059)       0:03:14.835 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:29:43 +0000 (0:00:00.039)       0:03:14.874 *****\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:29:44 +0000 (0:00:00.791)       0:03:15.666 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nSaturday 28 February 2026  19:29:47 +0000 (0:00:02.308)       0:03:17.974 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nSaturday 28 February 2026  19:29:47 +0000 (0:00:00.096)       0:03:18.071 *****\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nSaturday 28 February 2026  19:29:48 +0000 (0:00:00.882)       0:03:18.953 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nSaturday 28 February 2026  19:29:49 +0000 (0:00:01.304)       0:03:20.258 *****\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=107  changed=53   unreachable=0    failed=0    skipped=41   rescued=0    ignored=3\n\n\nTASKS RECAP ********************************************************************\nSaturday 28 February 2026  19:29:55 +0000 (0:00:05.625)       0:03:25.883 *****\n===============================================================================\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 33.80s\nvexxhost.containers.containerd : Install SELinux packages -------------- 27.70s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems -- 17.07s\nvexxhost.containers.download_artifact : Download item ------------------ 12.81s\nvexxhost.kubernetes.kubernetes : Enable EPEL repository ---------------- 11.03s\nvexxhost.containers.package : Update state for tar --------------------- 10.22s\nvexxhost.containers.download_artifact : Download item ------------------- 6.75s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 5.63s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 5.02s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.32s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.11s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.46s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.31s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.22s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.06s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.88s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.81s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.69s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.61s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.55s\nINFO     [aio > converge] Executed: Successful\nINFO     [aio > idempotence] Executing\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:29:56 +0000 (0:00:00.017)       0:00:00.017 *****\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nSaturday 28 February 2026  19:29:57 +0000 (0:00:01.181)       0:00:01.199 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nSaturday 28 February 2026  19:29:58 +0000 (0:00:00.608)       0:00:01.807 *****\nok: [controller] => (item=/etc/keepalived/keepalived.conf)\nok: [controller] => (item=/etc/keepalived/check_apiserver.sh)\nok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [controller] => (item=/etc/haproxy/haproxy.cfg)\nok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nSaturday 28 February 2026  19:30:00 +0000 (0:00:01.560)       0:00:03.367 *****\nok: [controller] => (item=/etc/kubernetes/manifests/kube-apiserver.yaml)\nok: [controller] => (item=/etc/kubernetes/controller-manager.conf)\nok: [controller] => (item=/etc/kubernetes/scheduler.conf)\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nSaturday 28 February 2026  19:30:01 +0000 (0:00:01.014)       0:00:04.382 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nSaturday 28 February 2026  19:30:01 +0000 (0:00:00.452)       0:00:04.835 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nSaturday 28 February 2026  19:30:01 +0000 (0:00:00.326)       0:00:05.161 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nSaturday 28 February 2026  19:30:01 +0000 (0:00:00.026)       0:00:05.188 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nSaturday 28 February 2026  19:30:01 +0000 (0:00:00.033)       0:00:05.221 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nSaturday 28 February 2026  19:30:02 +0000 (0:00:00.947)       0:00:06.169 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nSaturday 28 February 2026  19:30:03 +0000 (0:00:00.340)       0:00:06.510 *****\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:30:03 +0000 (0:00:00.064)       0:00:06.574 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:04 +0000 (0:00:00.953)       0:00:07.528 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:30:04 +0000 (0:00:00.061)       0:00:07.589 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nSaturday 28 February 2026  19:30:04 +0000 (0:00:00.034)       0:00:07.624 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:04 +0000 (0:00:00.402)       0:00:08.027 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:04 +0000 (0:00:00.059)       0:00:08.087 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:05 +0000 (0:00:00.582)       0:00:08.670 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:05 +0000 (0:00:00.040)       0:00:08.710 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:30:05 +0000 (0:00:00.032)       0:00:08.743 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:12 +0000 (0:00:07.189)       0:00:15.933 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:12 +0000 (0:00:00.094)       0:00:16.027 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:13 +0000 (0:00:00.601)       0:00:16.628 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nSaturday 28 February 2026  19:30:17 +0000 (0:00:04.119)       0:00:20.747 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nSaturday 28 February 2026  19:30:19 +0000 (0:00:01.962)       0:00:22.710 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nSaturday 28 February 2026  19:30:20 +0000 (0:00:00.633)       0:00:23.344 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nSaturday 28 February 2026  19:30:20 +0000 (0:00:00.847)       0:00:24.192 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nSaturday 28 February 2026  19:30:20 +0000 (0:00:00.025)       0:00:24.218 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nSaturday 28 February 2026  19:30:21 +0000 (0:00:00.966)       0:00:25.184 *****\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nSaturday 28 February 2026  19:30:23 +0000 (0:00:01.831)       0:00:27.016 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nSaturday 28 February 2026  19:30:24 +0000 (0:00:01.093)       0:00:28.109 *****\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nSaturday 28 February 2026  19:30:24 +0000 (0:00:00.008)       0:00:28.118 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nSaturday 28 February 2026  19:30:25 +0000 (0:00:01.197)       0:00:29.316 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nSaturday 28 February 2026  19:30:28 +0000 (0:00:02.396)       0:00:31.712 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.080)       0:00:31.793 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.047)       0:00:31.841 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.049)       0:00:31.890 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.040)       0:00:31.931 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.051)       0:00:31.983 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.036)       0:00:32.019 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:28 +0000 (0:00:00.040)       0:00:32.059 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.580)       0:00:32.640 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.045)       0:00:32.686 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.035)       0:00:32.721 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.035)       0:00:32.757 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.462)       0:00:33.219 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.045)       0:00:33.265 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:29 +0000 (0:00:00.043)       0:00:33.309 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nSaturday 28 February 2026  19:30:30 +0000 (0:00:00.043)       0:00:33.352 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nSaturday 28 February 2026  19:30:31 +0000 (0:00:01.148)       0:00:34.501 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nSaturday 28 February 2026  19:30:31 +0000 (0:00:00.333)       0:00:34.834 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nSaturday 28 February 2026  19:30:31 +0000 (0:00:00.450)       0:00:35.284 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nSaturday 28 February 2026  19:30:31 +0000 (0:00:00.028)       0:00:35.313 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nSaturday 28 February 2026  19:30:32 +0000 (0:00:00.909)       0:00:36.222 *****\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nSaturday 28 February 2026  19:30:34 +0000 (0:00:01.726)       0:00:37.948 *****\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nSaturday 28 February 2026  19:30:35 +0000 (0:00:01.017)       0:00:38.966 *****\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nSaturday 28 February 2026  19:30:35 +0000 (0:00:00.006)       0:00:38.972 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:36 +0000 (0:00:00.501)       0:00:39.473 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:36 +0000 (0:00:00.035)       0:00:39.509 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:36 +0000 (0:00:00.064)       0:00:39.573 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:36 +0000 (0:00:00.435)       0:00:40.008 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:38 +0000 (0:00:01.702)       0:00:41.710 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:38 +0000 (0:00:00.139)       0:00:41.849 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:39 +0000 (0:00:00.477)       0:00:42.327 *****\nok: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nSaturday 28 February 2026  19:30:40 +0000 (0:00:01.698)       0:00:44.025 *****\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nSaturday 28 February 2026  19:30:41 +0000 (0:00:00.936)       0:00:44.962 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:42 +0000 (0:00:00.371)       0:00:45.334 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:42 +0000 (0:00:00.040)       0:00:45.375 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:42 +0000 (0:00:00.068)       0:00:45.443 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:42 +0000 (0:00:00.495)       0:00:45.939 *****\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nSaturday 28 February 2026  19:30:45 +0000 (0:00:02.504)       0:00:48.444 *****\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/redhat.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nSaturday 28 February 2026  19:30:45 +0000 (0:00:00.050)       0:00:48.494 *****\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nSaturday 28 February 2026  19:30:46 +0000 (0:00:01.179)       0:00:49.674 *****\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nSaturday 28 February 2026  19:30:46 +0000 (0:00:00.554)       0:00:50.228 *****\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nSaturday 28 February 2026  19:30:47 +0000 (0:00:00.922)       0:00:51.151 *****\nok: [controller] => (item=br_netfilter)\nok: [controller] => (item=ip_tables)\nok: [controller] => (item=ip6_tables)\nok: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:30:49 +0000 (0:00:01.454)       0:00:52.606 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:30:49 +0000 (0:00:00.040)       0:00:52.646 *****\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:30:49 +0000 (0:00:00.050)       0:00:52.697 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:30:49 +0000 (0:00:00.469)       0:00:53.166 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nSaturday 28 February 2026  19:30:49 +0000 (0:00:00.037)       0:00:53.204 *****\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/redhat.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nSaturday 28 February 2026  19:30:49 +0000 (0:00:00.055)       0:00:53.260 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nSaturday 28 February 2026  19:30:51 +0000 (0:00:01.075)       0:00:54.336 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nSaturday 28 February 2026  19:30:52 +0000 (0:00:01.108)       0:00:55.444 *****\nok: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nok: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nok: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nok: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nok: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nok: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nok: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nSaturday 28 February 2026  19:30:54 +0000 (0:00:02.452)       0:00:57.896 *****\nok: [controller] => (item=/etc/systemd/system/kubelet.service.d)\nok: [controller] => (item=/etc/kubernetes)\nok: [controller] => (item=/etc/kubernetes/manifests)\n\nTASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********\nSaturday 28 February 2026  19:30:55 +0000 (0:00:01.015)       0:00:58.911 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nSaturday 28 February 2026  19:30:56 +0000 (0:00:00.907)       0:00:59.819 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nSaturday 28 February 2026  19:30:57 +0000 (0:00:00.871)       0:01:00.690 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nSaturday 28 February 2026  19:30:57 +0000 (0:00:00.340)       0:01:01.031 *****\n[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\n\nTask failed.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:78:7\n\n76       register: kubelet_swapon\n77\n78     - name: Disable swap\n         ^ column 7\n\n<<< caused by >>>\n\nConditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11\n\n81       ignore_errors: \"{{ ansible_check_mode }}\"\n82       when:\n83         - kubelet_swapon.stdout\n             ^ column 11\n\nBroken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nSaturday 28 February 2026  19:30:57 +0000 (0:00:00.029)       0:01:01.060 *****\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nSaturday 28 February 2026  19:30:58 +0000 (0:00:00.900)       0:01:01.961 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nSaturday 28 February 2026  19:30:59 +0000 (0:00:00.923)       0:01:02.884 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nSaturday 28 February 2026  19:31:00 +0000 (0:00:00.525)       0:01:03.409 *****\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nSaturday 28 February 2026  19:31:00 +0000 (0:00:00.009)       0:01:03.419 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nSaturday 28 February 2026  19:31:00 +0000 (0:00:00.523)       0:01:03.942 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nSaturday 28 February 2026  19:31:00 +0000 (0:00:00.032)       0:01:03.975 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nSaturday 28 February 2026  19:31:01 +0000 (0:00:00.980)       0:01:04.955 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.511)       0:01:05.467 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.035)       0:01:05.502 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.084)       0:01:05.587 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.091)       0:01:05.678 *****\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.376)       0:01:06.055 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.046)       0:01:06.102 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.045)       0:01:06.147 *****\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nSaturday 28 February 2026  19:31:02 +0000 (0:00:00.044)       0:01:06.192 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nSaturday 28 February 2026  19:31:03 +0000 (0:00:01.004)       0:01:07.197 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nSaturday 28 February 2026  19:31:03 +0000 (0:00:00.032)       0:01:07.229 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nSaturday 28 February 2026  19:31:03 +0000 (0:00:00.031)       0:01:07.261 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nSaturday 28 February 2026  19:31:03 +0000 (0:00:00.033)       0:01:07.294 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.034)       0:01:07.329 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.027)       0:01:07.357 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.035)       0:01:07.392 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.034)       0:01:07.427 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.365)       0:01:07.793 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.377)       0:01:08.170 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nSaturday 28 February 2026  19:31:04 +0000 (0:00:00.030)       0:01:08.201 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nSaturday 28 February 2026  19:31:05 +0000 (0:00:00.367)       0:01:08.569 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nSaturday 28 February 2026  19:31:05 +0000 (0:00:00.340)       0:01:08.909 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nSaturday 28 February 2026  19:31:05 +0000 (0:00:00.350)       0:01:09.260 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nSaturday 28 February 2026  19:31:05 +0000 (0:00:00.042)       0:01:09.303 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nSaturday 28 February 2026  19:31:06 +0000 (0:00:00.041)       0:01:09.345 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nSaturday 28 February 2026  19:31:07 +0000 (0:00:01.146)       0:01:10.491 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nSaturday 28 February 2026  19:31:08 +0000 (0:00:01.111)       0:01:11.603 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.887)       0:01:12.491 *****\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.043)       0:01:12.534 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.038)       0:01:12.573 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.038)       0:01:12.611 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.045)       0:01:12.657 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.031)       0:01:12.688 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nSaturday 28 February 2026  19:31:09 +0000 (0:00:00.543)       0:01:13.232 *****\nok: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:31:11 +0000 (0:00:01.226)       0:01:14.459 *****\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nSaturday 28 February 2026  19:31:12 +0000 (0:00:01.013)       0:01:15.472 *****\nskipping: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nSaturday 28 February 2026  19:31:12 +0000 (0:00:00.038)       0:01:15.510 *****\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nSaturday 28 February 2026  19:31:13 +0000 (0:00:01.058)       0:01:16.569 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:31:13 +0000 (0:00:00.382)       0:01:16.952 *****\nok: [controller] => {\n    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:31:13 +0000 (0:00:00.039)       0:01:16.991 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:31:14 +0000 (0:00:00.434)       0:01:17.426 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nSaturday 28 February 2026  19:31:15 +0000 (0:00:01.795)       0:01:19.221 *****\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nSaturday 28 February 2026  19:31:15 +0000 (0:00:00.029)       0:01:19.250 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nSaturday 28 February 2026  19:31:16 +0000 (0:00:00.367)       0:01:19.618 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nSaturday 28 February 2026  19:31:16 +0000 (0:00:00.404)       0:01:20.023 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nSaturday 28 February 2026  19:31:17 +0000 (0:00:00.366)       0:01:20.389 *****\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nSaturday 28 February 2026  19:31:17 +0000 (0:00:00.340)       0:01:20.730 *****\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nSaturday 28 February 2026  19:31:17 +0000 (0:00:00.056)       0:01:20.787 *****\nok: [controller] => {\n    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nSaturday 28 February 2026  19:31:17 +0000 (0:00:00.041)       0:01:20.828 *****\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nSaturday 28 February 2026  19:31:17 +0000 (0:00:00.435)       0:01:21.263 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nSaturday 28 February 2026  19:31:19 +0000 (0:00:02.026)       0:01:23.290 *****\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nSaturday 28 February 2026  19:31:20 +0000 (0:00:00.099)       0:01:23.389 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nSaturday 28 February 2026  19:31:20 +0000 (0:00:00.886)       0:01:24.275 *****\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nSaturday 28 February 2026  19:31:22 +0000 (0:00:01.191)       0:01:25.467 *****\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=108  changed=0    unreachable=0    failed=0    skipped=37   rescued=0    ignored=1\n\n\nTASKS RECAP ********************************************************************\nSaturday 28 February 2026  19:31:25 +0000 (0:00:02.903)       0:01:28.370 *****\n===============================================================================\nvexxhost.containers.package : Update state for tar ---------------------- 7.19s\nvexxhost.containers.download_artifact : Extract archive ----------------- 4.12s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.90s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.50s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.45s\nvexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap --- 2.40s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.03s\nvexxhost.containers.containerd : Install SELinux packages --------------- 1.96s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.83s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.80s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.73s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.70s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.70s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.56s\nvexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.45s\nvexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.23s\nvexxhost.containers.containerd : Enable and start service --------------- 1.20s\nvexxhost.kubernetes.cilium : Get current Kubernetes version ------------- 1.19s\nGathering Facts --------------------------------------------------------- 1.18s\nvexxhost.containers.cni_plugins : Install additional packages ----------- 1.18s\nINFO     [aio > idempotence] Executed: Successful\nINFO     [aio > side_effect] Executing\nWARNING  [aio > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > verify] Executing\n\nPLAY [Verify] ******************************************************************\n\nTASK [Gathering Facts] *********************************************************\nSaturday 28 February 2026  19:31:26 +0000 (0:00:00.011)       0:00:00.011 *****\nok: [controller]\n\nTASK [Gather service facts] ****************************************************\nSaturday 28 February 2026  19:31:27 +0000 (0:00:01.325)       0:00:01.337 *****\nok: [controller]\n\nTASK [Make sure kubelet service is running] ************************************\nSaturday 28 February 2026  19:31:31 +0000 (0:00:04.064)       0:00:05.402 *****\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Make sure kubelet service is enabled] ************************************\nSaturday 28 February 2026  19:31:31 +0000 (0:00:00.033)       0:00:05.436 *****\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Get all nodes] ***********************************************************\nSaturday 28 February 2026  19:31:31 +0000 (0:00:00.033)       0:00:05.469 *****\nchanged: [controller]\n\nTASK [Print node list] *********************************************************\nSaturday 28 February 2026  19:31:32 +0000 (0:00:00.559)       0:00:06.028 *****\nok: [controller] => {\n    \"msg\": [\n        \"NAME         STATUS   ROLES           AGE     VERSION\",\n        \"controller   Ready    control-plane   2m32s   v1.34.0\"\n    ]\n}\n\nTASK [Assert no nody is not ready] *********************************************\nSaturday 28 February 2026  19:31:32 +0000 (0:00:00.035)       0:00:06.064 *****\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=7    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nSaturday 28 February 2026  19:31:32 +0000 (0:00:00.026)       0:00:06.091 *****\n===============================================================================\nGather service facts ---------------------------------------------------- 4.06s\nGathering Facts --------------------------------------------------------- 1.33s\nGet all nodes ----------------------------------------------------------- 0.56s\nPrint node list --------------------------------------------------------- 0.04s\nMake sure kubelet service is running ------------------------------------ 0.03s\nMake sure kubelet service is enabled ------------------------------------ 0.03s\nAssert no nody is not ready --------------------------------------------- 0.03s\nINFO     [aio > verify] Executed: Successful\nINFO     [aio > cleanup] Executing\nWARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [aio > destroy] Executing\nWARNING  [aio > destroy] Skipping, '--destroy=never' requested.\nINFO     [aio > destroy] Executed: Successful\nWARNING  Molecule executed 1 scenario (1 missing files)",
                            "stdout_lines": [
                                "Downloading cpython-3.13.7-linux-x86_64-gnu (download) (30.9MiB)",
                                " Downloading cpython-3.13.7-linux-x86_64-gnu (download)",
                                "Using CPython 3.13.7",
                                "Creating virtual environment at: .venv",
                                "Downloading cryptography (4.3MiB)",
                                "Downloading pygments (1.2MiB)",
                                "Downloading ansible-core (2.3MiB)",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading ansible-core",
                                "Installed 36 packages in 98ms",
                                "INFO     Collection 'vexxhost.kubernetes' detected.",
                                "INFO     Scenarios will be used from 'extensions/molecule'",
                                "CRITICAL 'extensions/molecule/default/molecule.yml' glob failed.  Exiting.",
                                "INFO     default scenario not found, disabling shared state.",
                                "INFO     [aio > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [aio > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [aio > dependency] Executing",
                                "WARNING  [aio > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [aio > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [aio > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [aio > cleanup] Executing",
                                "WARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > destroy] Executing",
                                "WARNING  [aio > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [aio > destroy] Executed: Successful",
                                "INFO     [aio > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/aio/converge.yml",
                                "INFO     [aio > syntax] Executed: Successful",
                                "INFO     [aio > create] Executing",
                                "WARNING  [aio > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:26:26 +0000 (0:00:00.032)       0:00:00.032 *****",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Saturday 28 February 2026  19:26:27 +0000 (0:00:01.481)       0:00:01.514 *****",
                                "skipping: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Saturday 28 February 2026  19:26:27 +0000 (0:00:00.023)       0:00:01.537 *****",
                                "===============================================================================",
                                "Gathering Facts --------------------------------------------------------- 1.48s",
                                "Install Debian packages ------------------------------------------------- 0.02s",
                                "INFO     [aio > prepare] Executed: Successful",
                                "INFO     [aio > converge] Executing",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:26:29 +0000 (0:00:00.016)       0:00:00.016 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Saturday 28 February 2026  19:26:30 +0000 (0:00:01.113)       0:00:01.130 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Saturday 28 February 2026  19:26:30 +0000 (0:00:00.704)       0:00:01.834 *****",
                                "ok: [controller] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [controller] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [controller] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Saturday 28 February 2026  19:26:32 +0000 (0:00:01.692)       0:00:03.527 *****",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Saturday 28 February 2026  19:26:33 +0000 (0:00:01.077)       0:00:04.604 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Saturday 28 February 2026  19:26:34 +0000 (0:00:00.439)       0:00:05.044 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Saturday 28 February 2026  19:26:34 +0000 (0:00:00.314)       0:00:05.358 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Saturday 28 February 2026  19:26:34 +0000 (0:00:00.027)       0:00:05.386 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Saturday 28 February 2026  19:26:34 +0000 (0:00:00.037)       0:00:05.424 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Saturday 28 February 2026  19:26:35 +0000 (0:00:01.277)       0:00:06.701 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Saturday 28 February 2026  19:26:36 +0000 (0:00:00.346)       0:00:07.048 *****",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:26:36 +0000 (0:00:00.058)       0:00:07.106 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:26:37 +0000 (0:00:00.859)       0:00:07.966 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:26:37 +0000 (0:00:00.123)       0:00:08.090 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Saturday 28 February 2026  19:26:37 +0000 (0:00:00.039)       0:00:08.129 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:26:37 +0000 (0:00:00.352)       0:00:08.481 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:26:37 +0000 (0:00:00.098)       0:00:08.580 *****",
                                "[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:26:38 +0000 (0:00:00.909)       0:00:09.489 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:26:38 +0000 (0:00:00.040)       0:00:09.529 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:26:38 +0000 (0:00:00.037)       0:00:09.567 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:26:48 +0000 (0:00:10.217)       0:00:19.785 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:26:48 +0000 (0:00:00.070)       0:00:19.856 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:26:49 +0000 (0:00:00.904)       0:00:20.760 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Saturday 28 February 2026  19:26:53 +0000 (0:00:03.320)       0:00:24.080 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Saturday 28 February 2026  19:27:20 +0000 (0:00:27.697)       0:00:51.778 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Saturday 28 February 2026  19:27:21 +0000 (0:00:00.491)       0:00:52.269 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Saturday 28 February 2026  19:27:22 +0000 (0:00:00.678)       0:00:52.948 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Saturday 28 February 2026  19:27:22 +0000 (0:00:00.030)       0:00:52.978 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Saturday 28 February 2026  19:27:23 +0000 (0:00:00.958)       0:00:53.936 *****",
                                "changed: [controller] => (item={'path': '/etc/containerd'})",
                                "changed: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Saturday 28 February 2026  19:27:24 +0000 (0:00:01.612)       0:00:55.549 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Saturday 28 February 2026  19:27:25 +0000 (0:00:01.105)       0:00:56.654 *****",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Saturday 28 February 2026  19:27:25 +0000 (0:00:00.007)       0:00:56.662 *****",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Saturday 28 February 2026  19:27:26 +0000 (0:00:00.946)       0:00:57.609 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Saturday 28 February 2026  19:27:27 +0000 (0:00:00.870)       0:00:58.479 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Saturday 28 February 2026  19:27:28 +0000 (0:00:00.704)       0:00:59.184 *****",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000157485.novalocal's Python /usr/bin/python3. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes_upgrade_check/tasks/main.yml:16:3",
                                "",
                                "14",
                                "15 ---",
                                "16 - name: Retrieve the \"kubeadm-config\" ConfigMap",
                                "     ^ column 3",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Failed to import the required Python library (kubernetes) on np0000157485.novalocal's Python /usr/bin/python3. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.816)       0:01:00.001 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.035)       0:01:00.037 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.043)       0:01:00.080 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.036)       0:01:00.117 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.037)       0:01:00.154 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.044)       0:01:00.198 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.038)       0:01:00.236 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:27:29 +0000 (0:00:00.043)       0:01:00.280 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:27:30 +0000 (0:00:01.118)       0:01:01.399 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:30 +0000 (0:00:00.044)       0:01:01.444 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:27:30 +0000 (0:00:00.037)       0:01:01.481 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:27:30 +0000 (0:00:00.044)       0:01:01.525 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:27:43 +0000 (0:00:12.808)       0:01:14.334 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:43 +0000 (0:00:00.033)       0:01:14.367 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:43 +0000 (0:00:00.036)       0:01:14.403 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Saturday 28 February 2026  19:27:43 +0000 (0:00:00.027)       0:01:14.430 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Saturday 28 February 2026  19:27:44 +0000 (0:00:00.786)       0:01:15.217 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Saturday 28 February 2026  19:27:44 +0000 (0:00:00.337)       0:01:15.555 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Saturday 28 February 2026  19:27:45 +0000 (0:00:00.445)       0:01:16.001 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Saturday 28 February 2026  19:27:45 +0000 (0:00:00.033)       0:01:16.034 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Saturday 28 February 2026  19:27:46 +0000 (0:00:00.909)       0:01:16.944 *****",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Saturday 28 February 2026  19:27:47 +0000 (0:00:01.552)       0:01:18.497 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Saturday 28 February 2026  19:27:48 +0000 (0:00:00.948)       0:01:19.446 *****",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Saturday 28 February 2026  19:27:48 +0000 (0:00:00.006)       0:01:19.452 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:49 +0000 (0:00:00.499)       0:01:19.951 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:27:49 +0000 (0:00:00.036)       0:01:19.987 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:27:49 +0000 (0:00:00.070)       0:01:20.058 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:27:50 +0000 (0:00:00.843)       0:01:20.901 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:27:51 +0000 (0:00:01.881)       0:01:22.783 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:27:51 +0000 (0:00:00.068)       0:01:22.851 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:27:52 +0000 (0:00:00.795)       0:01:23.647 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Saturday 28 February 2026  19:27:54 +0000 (0:00:02.218)       0:01:25.865 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Saturday 28 February 2026  19:27:56 +0000 (0:00:01.053)       0:01:26.919 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:27:56 +0000 (0:00:00.343)       0:01:27.263 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:27:56 +0000 (0:00:00.036)       0:01:27.299 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:27:56 +0000 (0:00:00.066)       0:01:27.366 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:27:57 +0000 (0:00:01.052)       0:01:28.418 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Saturday 28 February 2026  19:28:00 +0000 (0:00:03.112)       0:01:31.530 *****",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/redhat.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Saturday 28 February 2026  19:28:00 +0000 (0:00:00.056)       0:01:31.587 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Saturday 28 February 2026  19:28:01 +0000 (0:00:00.750)       0:01:32.338 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Saturday 28 February 2026  19:28:01 +0000 (0:00:00.508)       0:01:32.846 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Saturday 28 February 2026  19:28:02 +0000 (0:00:00.990)       0:01:33.837 *****",
                                "changed: [controller] => (item=br_netfilter)",
                                "changed: [controller] => (item=ip_tables)",
                                "changed: [controller] => (item=ip6_tables)",
                                "ok: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:28:04 +0000 (0:00:01.506)       0:01:35.344 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:28:04 +0000 (0:00:00.037)       0:01:35.382 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:28:04 +0000 (0:00:00.041)       0:01:35.423 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:28:11 +0000 (0:00:06.751)       0:01:42.174 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Saturday 28 February 2026  19:28:11 +0000 (0:00:00.034)       0:01:42.208 *****",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/redhat.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Saturday 28 February 2026  19:28:11 +0000 (0:00:00.046)       0:01:42.255 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Saturday 28 February 2026  19:28:12 +0000 (0:00:00.739)       0:01:42.994 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Saturday 28 February 2026  19:28:17 +0000 (0:00:05.023)       0:01:48.018 *****",
                                "changed: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Saturday 28 February 2026  19:28:19 +0000 (0:00:02.463)       0:01:50.482 *****",
                                "changed: [controller] => (item=/etc/systemd/system/kubelet.service.d)",
                                "ok: [controller] => (item=/etc/kubernetes)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********",
                                "Saturday 28 February 2026  19:28:20 +0000 (0:00:01.012)       0:01:51.495 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Saturday 28 February 2026  19:28:21 +0000 (0:00:01.019)       0:01:52.514 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Saturday 28 February 2026  19:28:22 +0000 (0:00:01.014)       0:01:53.528 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Saturday 28 February 2026  19:28:23 +0000 (0:00:00.355)       0:01:53.884 *****",
                                "[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.",
                                "",
                                "Task failed.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:78:7",
                                "",
                                "76       register: kubelet_swapon",
                                "77",
                                "78     - name: Disable swap",
                                "         ^ column 7",
                                "",
                                "<<< caused by >>>",
                                "",
                                "Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11",
                                "",
                                "81       ignore_errors: \"{{ ansible_check_mode }}\"",
                                "82       when:",
                                "83         - kubelet_swapon.stdout",
                                "             ^ column 11",
                                "",
                                "Broken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Saturday 28 February 2026  19:28:23 +0000 (0:00:00.035)       0:01:53.919 *****",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Saturday 28 February 2026  19:28:23 +0000 (0:00:00.852)       0:01:54.772 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Saturday 28 February 2026  19:28:24 +0000 (0:00:00.988)       0:01:55.761 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Saturday 28 February 2026  19:28:25 +0000 (0:00:00.736)       0:01:56.497 *****",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Saturday 28 February 2026  19:28:25 +0000 (0:00:00.005)       0:01:56.503 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Saturday 28 February 2026  19:28:26 +0000 (0:00:00.943)       0:01:57.446 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Saturday 28 February 2026  19:28:27 +0000 (0:00:00.718)       0:01:58.165 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Saturday 28 February 2026  19:28:27 +0000 (0:00:00.027)       0:01:58.193 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Saturday 28 February 2026  19:28:28 +0000 (0:00:00.923)       0:01:59.116 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Saturday 28 February 2026  19:28:28 +0000 (0:00:00.490)       0:01:59.606 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Saturday 28 February 2026  19:28:28 +0000 (0:00:00.031)       0:01:59.638 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Saturday 28 February 2026  19:28:28 +0000 (0:00:00.078)       0:01:59.716 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***",
                                "Saturday 28 February 2026  19:28:28 +0000 (0:00:00.079)       0:01:59.795 *****",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Saturday 28 February 2026  19:28:29 +0000 (0:00:00.359)       0:02:00.155 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Saturday 28 February 2026  19:28:29 +0000 (0:00:00.045)       0:02:00.201 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Saturday 28 February 2026  19:28:29 +0000 (0:00:00.052)       0:02:00.253 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Saturday 28 February 2026  19:28:29 +0000 (0:00:00.039)       0:02:00.292 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:01.033)       0:02:01.326 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.033)       0:02:01.360 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.032)       0:02:01.392 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.032)       0:02:01.424 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.039)       0:02:01.463 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.037)       0:02:01.501 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.034)       0:02:01.535 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Saturday 28 February 2026  19:28:30 +0000 (0:00:00.037)       0:02:01.573 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Saturday 28 February 2026  19:29:04 +0000 (0:00:33.798)       0:02:35.372 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Saturday 28 February 2026  19:29:04 +0000 (0:00:00.386)       0:02:35.758 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Saturday 28 February 2026  19:29:04 +0000 (0:00:00.026)       0:02:35.785 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Saturday 28 February 2026  19:29:05 +0000 (0:00:00.339)       0:02:36.124 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Saturday 28 February 2026  19:29:05 +0000 (0:00:00.326)       0:02:36.451 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Saturday 28 February 2026  19:29:05 +0000 (0:00:00.357)       0:02:36.808 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Saturday 28 February 2026  19:29:05 +0000 (0:00:00.038)       0:02:36.847 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Saturday 28 February 2026  19:29:05 +0000 (0:00:00.033)       0:02:36.880 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Saturday 28 February 2026  19:29:17 +0000 (0:00:11.027)       0:02:47.907 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Saturday 28 February 2026  19:29:34 +0000 (0:00:17.065)       0:03:04.973 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:01.151)       0:03:06.125 *****",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.034)       0:03:06.160 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.032)       0:03:06.192 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.037)       0:03:06.230 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.038)       0:03:06.268 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.032)       0:03:06.301 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Saturday 28 February 2026  19:29:35 +0000 (0:00:00.532)       0:03:06.834 *****",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:29:37 +0000 (0:00:01.245)       0:03:08.080 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:29:38 +0000 (0:00:00.883)       0:03:08.963 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:29:38 +0000 (0:00:00.034)       0:03:08.997 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Saturday 28 February 2026  19:29:39 +0000 (0:00:01.111)       0:03:10.109 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:29:39 +0000 (0:00:00.376)       0:03:10.485 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:29:39 +0000 (0:00:00.035)       0:03:10.521 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:29:40 +0000 (0:00:00.701)       0:03:11.222 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Saturday 28 February 2026  19:29:42 +0000 (0:00:02.059)       0:03:13.282 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Saturday 28 February 2026  19:29:42 +0000 (0:00:00.032)       0:03:13.315 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Saturday 28 February 2026  19:29:42 +0000 (0:00:00.344)       0:03:13.660 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Saturday 28 February 2026  19:29:43 +0000 (0:00:00.392)       0:03:14.053 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Saturday 28 February 2026  19:29:43 +0000 (0:00:00.357)       0:03:14.410 *****",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Saturday 28 February 2026  19:29:43 +0000 (0:00:00.366)       0:03:14.776 *****",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:29:43 +0000 (0:00:00.059)       0:03:14.835 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:29:43 +0000 (0:00:00.039)       0:03:14.874 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:29:44 +0000 (0:00:00.791)       0:03:15.666 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Saturday 28 February 2026  19:29:47 +0000 (0:00:02.308)       0:03:17.974 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Saturday 28 February 2026  19:29:47 +0000 (0:00:00.096)       0:03:18.071 *****",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Saturday 28 February 2026  19:29:48 +0000 (0:00:00.882)       0:03:18.953 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Saturday 28 February 2026  19:29:49 +0000 (0:00:01.304)       0:03:20.258 *****",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=107  changed=53   unreachable=0    failed=0    skipped=41   rescued=0    ignored=3",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Saturday 28 February 2026  19:29:55 +0000 (0:00:05.625)       0:03:25.883 *****",
                                "===============================================================================",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 33.80s",
                                "vexxhost.containers.containerd : Install SELinux packages -------------- 27.70s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems -- 17.07s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 12.81s",
                                "vexxhost.kubernetes.kubernetes : Enable EPEL repository ---------------- 11.03s",
                                "vexxhost.containers.package : Update state for tar --------------------- 10.22s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 6.75s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 5.63s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 5.02s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.32s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.11s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.46s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.31s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.22s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.06s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.88s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.81s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.69s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.61s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.55s",
                                "INFO     [aio > converge] Executed: Successful",
                                "INFO     [aio > idempotence] Executing",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:29:56 +0000 (0:00:00.017)       0:00:00.017 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Saturday 28 February 2026  19:29:57 +0000 (0:00:01.181)       0:00:01.199 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Saturday 28 February 2026  19:29:58 +0000 (0:00:00.608)       0:00:01.807 *****",
                                "ok: [controller] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [controller] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [controller] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Saturday 28 February 2026  19:30:00 +0000 (0:00:01.560)       0:00:03.367 *****",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/kube-apiserver.yaml)",
                                "ok: [controller] => (item=/etc/kubernetes/controller-manager.conf)",
                                "ok: [controller] => (item=/etc/kubernetes/scheduler.conf)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Saturday 28 February 2026  19:30:01 +0000 (0:00:01.014)       0:00:04.382 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Saturday 28 February 2026  19:30:01 +0000 (0:00:00.452)       0:00:04.835 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Saturday 28 February 2026  19:30:01 +0000 (0:00:00.326)       0:00:05.161 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Saturday 28 February 2026  19:30:01 +0000 (0:00:00.026)       0:00:05.188 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Saturday 28 February 2026  19:30:01 +0000 (0:00:00.033)       0:00:05.221 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Saturday 28 February 2026  19:30:02 +0000 (0:00:00.947)       0:00:06.169 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Saturday 28 February 2026  19:30:03 +0000 (0:00:00.340)       0:00:06.510 *****",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:30:03 +0000 (0:00:00.064)       0:00:06.574 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:04 +0000 (0:00:00.953)       0:00:07.528 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:30:04 +0000 (0:00:00.061)       0:00:07.589 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Saturday 28 February 2026  19:30:04 +0000 (0:00:00.034)       0:00:07.624 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:04 +0000 (0:00:00.402)       0:00:08.027 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:04 +0000 (0:00:00.059)       0:00:08.087 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:05 +0000 (0:00:00.582)       0:00:08.670 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:05 +0000 (0:00:00.040)       0:00:08.710 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:30:05 +0000 (0:00:00.032)       0:00:08.743 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:12 +0000 (0:00:07.189)       0:00:15.933 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.0/containerd-2.2.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:12 +0000 (0:00:00.094)       0:00:16.027 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:13 +0000 (0:00:00.601)       0:00:16.628 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Saturday 28 February 2026  19:30:17 +0000 (0:00:04.119)       0:00:20.747 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Saturday 28 February 2026  19:30:19 +0000 (0:00:01.962)       0:00:22.710 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Saturday 28 February 2026  19:30:20 +0000 (0:00:00.633)       0:00:23.344 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Saturday 28 February 2026  19:30:20 +0000 (0:00:00.847)       0:00:24.192 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Saturday 28 February 2026  19:30:20 +0000 (0:00:00.025)       0:00:24.218 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Saturday 28 February 2026  19:30:21 +0000 (0:00:00.966)       0:00:25.184 *****",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Saturday 28 February 2026  19:30:23 +0000 (0:00:01.831)       0:00:27.016 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Saturday 28 February 2026  19:30:24 +0000 (0:00:01.093)       0:00:28.109 *****",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Saturday 28 February 2026  19:30:24 +0000 (0:00:00.008)       0:00:28.118 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Saturday 28 February 2026  19:30:25 +0000 (0:00:01.197)       0:00:29.316 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:02.396)       0:00:31.712 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.080)       0:00:31.793 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.047)       0:00:31.841 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.049)       0:00:31.890 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.040)       0:00:31.931 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.051)       0:00:31.983 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.036)       0:00:32.019 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:28 +0000 (0:00:00.040)       0:00:32.059 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.580)       0:00:32.640 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.045)       0:00:32.686 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.035)       0:00:32.721 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.035)       0:00:32.757 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.462)       0:00:33.219 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.045)       0:00:33.265 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:29 +0000 (0:00:00.043)       0:00:33.309 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Saturday 28 February 2026  19:30:30 +0000 (0:00:00.043)       0:00:33.352 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Saturday 28 February 2026  19:30:31 +0000 (0:00:01.148)       0:00:34.501 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Saturday 28 February 2026  19:30:31 +0000 (0:00:00.333)       0:00:34.834 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Saturday 28 February 2026  19:30:31 +0000 (0:00:00.450)       0:00:35.284 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Saturday 28 February 2026  19:30:31 +0000 (0:00:00.028)       0:00:35.313 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Saturday 28 February 2026  19:30:32 +0000 (0:00:00.909)       0:00:36.222 *****",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Saturday 28 February 2026  19:30:34 +0000 (0:00:01.726)       0:00:37.948 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Saturday 28 February 2026  19:30:35 +0000 (0:00:01.017)       0:00:38.966 *****",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Saturday 28 February 2026  19:30:35 +0000 (0:00:00.006)       0:00:38.972 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:36 +0000 (0:00:00.501)       0:00:39.473 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:36 +0000 (0:00:00.035)       0:00:39.509 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:36 +0000 (0:00:00.064)       0:00:39.573 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:36 +0000 (0:00:00.435)       0:00:40.008 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:38 +0000 (0:00:01.702)       0:00:41.710 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/critest-v1.34.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:38 +0000 (0:00:00.139)       0:00:41.849 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:39 +0000 (0:00:00.477)       0:00:42.327 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Saturday 28 February 2026  19:30:40 +0000 (0:00:01.698)       0:00:44.025 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Saturday 28 February 2026  19:30:41 +0000 (0:00:00.936)       0:00:44.962 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:42 +0000 (0:00:00.371)       0:00:45.334 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:42 +0000 (0:00:00.040)       0:00:45.375 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:42 +0000 (0:00:00.068)       0:00:45.443 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:42 +0000 (0:00:00.495)       0:00:45.939 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Saturday 28 February 2026  19:30:45 +0000 (0:00:02.504)       0:00:48.444 *****",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/redhat.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Saturday 28 February 2026  19:30:45 +0000 (0:00:00.050)       0:00:48.494 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Saturday 28 February 2026  19:30:46 +0000 (0:00:01.179)       0:00:49.674 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Saturday 28 February 2026  19:30:46 +0000 (0:00:00.554)       0:00:50.228 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Saturday 28 February 2026  19:30:47 +0000 (0:00:00.922)       0:00:51.151 *****",
                                "ok: [controller] => (item=br_netfilter)",
                                "ok: [controller] => (item=ip_tables)",
                                "ok: [controller] => (item=ip6_tables)",
                                "ok: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:01.454)       0:00:52.606 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:00.040)       0:00:52.646 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:00.050)       0:00:52.697 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:00.469)       0:00:53.166 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:00.037)       0:00:53.204 *****",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/redhat.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Saturday 28 February 2026  19:30:49 +0000 (0:00:00.055)       0:00:53.260 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Saturday 28 February 2026  19:30:51 +0000 (0:00:01.075)       0:00:54.336 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Saturday 28 February 2026  19:30:52 +0000 (0:00:01.108)       0:00:55.444 *****",
                                "ok: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "ok: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "ok: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "ok: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "ok: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "ok: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "ok: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Saturday 28 February 2026  19:30:54 +0000 (0:00:02.452)       0:00:57.896 *****",
                                "ok: [controller] => (item=/etc/systemd/system/kubelet.service.d)",
                                "ok: [controller] => (item=/etc/kubernetes)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********",
                                "Saturday 28 February 2026  19:30:55 +0000 (0:00:01.015)       0:00:58.911 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Saturday 28 February 2026  19:30:56 +0000 (0:00:00.907)       0:00:59.819 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Saturday 28 February 2026  19:30:57 +0000 (0:00:00.871)       0:01:00.690 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Saturday 28 February 2026  19:30:57 +0000 (0:00:00.340)       0:01:01.031 *****",
                                "[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.",
                                "",
                                "Task failed.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:78:7",
                                "",
                                "76       register: kubelet_swapon",
                                "77",
                                "78     - name: Disable swap",
                                "         ^ column 7",
                                "",
                                "<<< caused by >>>",
                                "",
                                "Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11",
                                "",
                                "81       ignore_errors: \"{{ ansible_check_mode }}\"",
                                "82       when:",
                                "83         - kubelet_swapon.stdout",
                                "             ^ column 11",
                                "",
                                "Broken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:83:11'. Conditionals must have a boolean result.\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Saturday 28 February 2026  19:30:57 +0000 (0:00:00.029)       0:01:01.060 *****",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Saturday 28 February 2026  19:30:58 +0000 (0:00:00.900)       0:01:01.961 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Saturday 28 February 2026  19:30:59 +0000 (0:00:00.923)       0:01:02.884 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Saturday 28 February 2026  19:31:00 +0000 (0:00:00.525)       0:01:03.409 *****",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Saturday 28 February 2026  19:31:00 +0000 (0:00:00.009)       0:01:03.419 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Saturday 28 February 2026  19:31:00 +0000 (0:00:00.523)       0:01:03.942 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Saturday 28 February 2026  19:31:00 +0000 (0:00:00.032)       0:01:03.975 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Saturday 28 February 2026  19:31:01 +0000 (0:00:00.980)       0:01:04.955 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.511)       0:01:05.467 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.035)       0:01:05.502 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.084)       0:01:05.587 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.091)       0:01:05.678 *****",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.376)       0:01:06.055 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.046)       0:01:06.102 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.045)       0:01:06.147 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Saturday 28 February 2026  19:31:02 +0000 (0:00:00.044)       0:01:06.192 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Saturday 28 February 2026  19:31:03 +0000 (0:00:01.004)       0:01:07.197 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Saturday 28 February 2026  19:31:03 +0000 (0:00:00.032)       0:01:07.229 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Saturday 28 February 2026  19:31:03 +0000 (0:00:00.031)       0:01:07.261 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Saturday 28 February 2026  19:31:03 +0000 (0:00:00.033)       0:01:07.294 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.034)       0:01:07.329 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.027)       0:01:07.357 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.035)       0:01:07.392 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.034)       0:01:07.427 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.365)       0:01:07.793 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.377)       0:01:08.170 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Saturday 28 February 2026  19:31:04 +0000 (0:00:00.030)       0:01:08.201 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Saturday 28 February 2026  19:31:05 +0000 (0:00:00.367)       0:01:08.569 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Saturday 28 February 2026  19:31:05 +0000 (0:00:00.340)       0:01:08.909 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Saturday 28 February 2026  19:31:05 +0000 (0:00:00.350)       0:01:09.260 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Saturday 28 February 2026  19:31:05 +0000 (0:00:00.042)       0:01:09.303 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Saturday 28 February 2026  19:31:06 +0000 (0:00:00.041)       0:01:09.345 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Saturday 28 February 2026  19:31:07 +0000 (0:00:01.146)       0:01:10.491 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Saturday 28 February 2026  19:31:08 +0000 (0:00:01.111)       0:01:11.603 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.887)       0:01:12.491 *****",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.043)       0:01:12.534 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.038)       0:01:12.573 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.038)       0:01:12.611 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.045)       0:01:12.657 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.031)       0:01:12.688 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Saturday 28 February 2026  19:31:09 +0000 (0:00:00.543)       0:01:13.232 *****",
                                "ok: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:31:11 +0000 (0:00:01.226)       0:01:14.459 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Saturday 28 February 2026  19:31:12 +0000 (0:00:01.013)       0:01:15.472 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Saturday 28 February 2026  19:31:12 +0000 (0:00:00.038)       0:01:15.510 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Saturday 28 February 2026  19:31:13 +0000 (0:00:01.058)       0:01:16.569 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:31:13 +0000 (0:00:00.382)       0:01:16.952 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:31:13 +0000 (0:00:00.039)       0:01:16.991 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:31:14 +0000 (0:00:00.434)       0:01:17.426 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Saturday 28 February 2026  19:31:15 +0000 (0:00:01.795)       0:01:19.221 *****",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Saturday 28 February 2026  19:31:15 +0000 (0:00:00.029)       0:01:19.250 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Saturday 28 February 2026  19:31:16 +0000 (0:00:00.367)       0:01:19.618 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Saturday 28 February 2026  19:31:16 +0000 (0:00:00.404)       0:01:20.023 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Saturday 28 February 2026  19:31:17 +0000 (0:00:00.366)       0:01:20.389 *****",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Saturday 28 February 2026  19:31:17 +0000 (0:00:00.340)       0:01:20.730 *****",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Saturday 28 February 2026  19:31:17 +0000 (0:00:00.056)       0:01:20.787 *****",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Saturday 28 February 2026  19:31:17 +0000 (0:00:00.041)       0:01:20.828 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Saturday 28 February 2026  19:31:17 +0000 (0:00:00.435)       0:01:21.263 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Saturday 28 February 2026  19:31:19 +0000 (0:00:02.026)       0:01:23.290 *****",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Saturday 28 February 2026  19:31:20 +0000 (0:00:00.099)       0:01:23.389 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Saturday 28 February 2026  19:31:20 +0000 (0:00:00.886)       0:01:24.275 *****",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Saturday 28 February 2026  19:31:22 +0000 (0:00:01.191)       0:01:25.467 *****",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=108  changed=0    unreachable=0    failed=0    skipped=37   rescued=0    ignored=1",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Saturday 28 February 2026  19:31:25 +0000 (0:00:02.903)       0:01:28.370 *****",
                                "===============================================================================",
                                "vexxhost.containers.package : Update state for tar ---------------------- 7.19s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 4.12s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.90s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.50s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.45s",
                                "vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap --- 2.40s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.03s",
                                "vexxhost.containers.containerd : Install SELinux packages --------------- 1.96s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.83s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.80s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.73s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.70s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.70s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.56s",
                                "vexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.45s",
                                "vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.23s",
                                "vexxhost.containers.containerd : Enable and start service --------------- 1.20s",
                                "vexxhost.kubernetes.cilium : Get current Kubernetes version ------------- 1.19s",
                                "Gathering Facts --------------------------------------------------------- 1.18s",
                                "vexxhost.containers.cni_plugins : Install additional packages ----------- 1.18s",
                                "INFO     [aio > idempotence] Executed: Successful",
                                "INFO     [aio > side_effect] Executing",
                                "WARNING  [aio > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > verify] Executing",
                                "",
                                "PLAY [Verify] ******************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Saturday 28 February 2026  19:31:26 +0000 (0:00:00.011)       0:00:00.011 *****",
                                "ok: [controller]",
                                "",
                                "TASK [Gather service facts] ****************************************************",
                                "Saturday 28 February 2026  19:31:27 +0000 (0:00:01.325)       0:00:01.337 *****",
                                "ok: [controller]",
                                "",
                                "TASK [Make sure kubelet service is running] ************************************",
                                "Saturday 28 February 2026  19:31:31 +0000 (0:00:04.064)       0:00:05.402 *****",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Make sure kubelet service is enabled] ************************************",
                                "Saturday 28 February 2026  19:31:31 +0000 (0:00:00.033)       0:00:05.436 *****",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Get all nodes] ***********************************************************",
                                "Saturday 28 February 2026  19:31:31 +0000 (0:00:00.033)       0:00:05.469 *****",
                                "changed: [controller]",
                                "",
                                "TASK [Print node list] *********************************************************",
                                "Saturday 28 February 2026  19:31:32 +0000 (0:00:00.559)       0:00:06.028 *****",
                                "ok: [controller] => {",
                                "    \"msg\": [",
                                "        \"NAME         STATUS   ROLES           AGE     VERSION\",",
                                "        \"controller   Ready    control-plane   2m32s   v1.34.0\"",
                                "    ]",
                                "}",
                                "",
                                "TASK [Assert no nody is not ready] *********************************************",
                                "Saturday 28 February 2026  19:31:32 +0000 (0:00:00.035)       0:00:06.064 *****",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=7    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Saturday 28 February 2026  19:31:32 +0000 (0:00:00.026)       0:00:06.091 *****",
                                "===============================================================================",
                                "Gather service facts ---------------------------------------------------- 4.06s",
                                "Gathering Facts --------------------------------------------------------- 1.33s",
                                "Get all nodes ----------------------------------------------------------- 0.56s",
                                "Print node list --------------------------------------------------------- 0.04s",
                                "Make sure kubelet service is running ------------------------------------ 0.03s",
                                "Make sure kubelet service is enabled ------------------------------------ 0.03s",
                                "Assert no nody is not ready --------------------------------------------- 0.03s",
                                "INFO     [aio > verify] Executed: Successful",
                                "INFO     [aio > cleanup] Executing",
                                "WARNING  [aio > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [aio > destroy] Executing",
                                "WARNING  [aio > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [aio > destroy] Executed: Successful",
                                "WARNING  Molecule executed 1 scenario (1 missing files)"
                            ],
                            "zuul_log_id": "0242ac17-0011-2a79-7e65-000000000006-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:34.038754Z",
                            "start": "2026-02-28T19:26:00.752695Z"
                        },
                        "id": "0242ac17-0011-2a79-7e65-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:31:38.053440Z",
                    "start": "2026-02-28T19:31:34.802720Z"
                },
                "id": "0242ac17-0011-b218-3f0c-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:34.869903Z",
                            "start": "2026-02-28T19:31:34.822408Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:34.923516Z",
                            "start": "2026-02-28T19:31:34.879220Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-000000000009",
                        "name": "Set log path for single node"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 0,
                                    "group": "root",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:35.718873Z",
                            "start": "2026-02-28T19:31:34.928542Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.204:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_local_rsync_password": null,
                                            "_local_rsync_path": "rsync",
                                            "_ssh_args": null,
                                            "_substitute_controller": false,
                                            "archive": true,
                                            "checksum": false,
                                            "compress": true,
                                            "copy_links": false,
                                            "delay_updates": true,
                                            "delete": false,
                                            "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.204:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs",
                                        "src": "logs"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.204:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts/",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_local_rsync_password": null,
                                            "_local_rsync_path": "rsync",
                                            "_ssh_args": null,
                                            "_substitute_controller": false,
                                            "archive": true,
                                            "checksum": false,
                                            "compress": true,
                                            "copy_links": false,
                                            "delay_updates": true,
                                            "delete": false,
                                            "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.204:/home/zuul/zuul-output/artifacts/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts",
                                        "src": "artifacts"
                                    }
                                },
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@162.253.55.204:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs/",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_local_rsync_password": null,
                                            "_local_rsync_path": "rsync",
                                            "_ssh_args": null,
                                            "_substitute_controller": false,
                                            "archive": true,
                                            "checksum": false,
                                            "compress": true,
                                            "copy_links": false,
                                            "delay_updates": true,
                                            "delete": false,
                                            "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs/",
                                            "dest_port": 22,
                                            "dirs": false,
                                            "existing_only": false,
                                            "group": false,
                                            "link_dest": null,
                                            "links": null,
                                            "mode": "pull",
                                            "owner": false,
                                            "partial": false,
                                            "perms": null,
                                            "private_key": null,
                                            "recursive": null,
                                            "rsync_opts": [],
                                            "rsync_path": null,
                                            "rsync_timeout": 0,
                                            "set_remote_user": true,
                                            "src": "zuul@162.253.55.204:/home/zuul/zuul-output/docs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:37.454182Z",
                            "start": "2026-02-28T19:31:35.729077Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-00000000000c",
                        "name": "Collect logs, artifacts and docs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts -mindepth 1)\" ] ; then\n  # Only create target directory if it is needed.\n  # Do not fail if it is already there.\n  mkdir -p /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/artifacts\n  # Leave the original directory behind so that other roles\n  # operating on the interface directories can simply no-op.\n  mv -f /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts/* /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.007317",
                                    "end": "2026-02-28 19:31:37.807753",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts -mindepth 1)\" ] ; then\n  # Only create target directory if it is needed.\n  # Do not fail if it is already there.\n  mkdir -p /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/artifacts\n  # Leave the original directory behind so that other roles\n  # operating on the interface directories can simply no-op.\n  mv -f /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/artifacts/* /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/artifacts\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-02-28 19:31:37.800436",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "artifacts",
                                    "zuul_log_id": "in-loop-ignore"
                                },
                                {
                                    "ansible_loop_var": "zj_item",
                                    "changed": true,
                                    "cmd": "if [ -n \"$(find /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs -mindepth 1)\" ] ; then\n  # Only create target directory if it is needed.\n  # Do not fail if it is already there.\n  mkdir -p /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/docs\n  # Leave the original directory behind so that other roles\n  # operating on the interface directories can simply no-op.\n  mv -f /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs/* /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.006551",
                                    "end": "2026-02-28 19:31:38.020835",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs -mindepth 1)\" ] ; then\n  # Only create target directory if it is needed.\n  # Do not fail if it is already there.\n  mkdir -p /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/docs\n  # Leave the original directory behind so that other roles\n  # operating on the interface directories can simply no-op.\n  mv -f /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/docs/* /var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/work/logs/docs\nfi\n",
                                            "_uses_shell": true,
                                            "argv": null,
                                            "chdir": null,
                                            "creates": null,
                                            "executable": null,
                                            "expand_argument_vars": true,
                                            "removes": null,
                                            "stdin": null,
                                            "stdin_add_newline": true,
                                            "strip_empty_ends": true,
                                            "zuul_ansible_split_streams": false,
                                            "zuul_log_id": "in-loop-ignore",
                                            "zuul_no_log": false,
                                            "zuul_output_max_bytes": 1073741824
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "start": "2026-02-28 19:31:38.014284",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:38.053440Z",
                            "start": "2026-02-28T19:31:37.465783Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-02-28T19:31:38.557970Z",
                    "start": "2026-02-28T19:31:38.062691Z"
                },
                "id": "0242ac17-0011-b218-3f0c-000000000013",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "authorized_key",
                            "changed": true,
                            "comment": null,
                            "exclusive": false,
                            "follow": false,
                            "invocation": {
                                "module_args": {
                                    "changed": true,
                                    "comment": null,
                                    "exclusive": false,
                                    "follow": false,
                                    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDkgFmORKYO0sIwqE9/X077+BV9LgKGyAnWBn7DqmsxqC0jEMHstsQxIF8hzgh+l+N5ERaGvSmiCtnth9eHQOi/2kqY0vw1FnbQrcdSVZWHG3QKnypBAhWU3GLbvOurIdeJJlXD4vgBuXlzYAxS5diejYrvR1P32qfElKm3bQPVGoRvGIxpPleJEbTx+mb0dbnHBtR8AEqnbiiFVaxAcX58XPUrSTBQxCGISbGL2gn0/W2q8mSFCQYz1LFzmsT/X+c+Ps8sVlKnQxmsKT5SwuHv2sfXleJqHLHNGS3yXg+ZnHzU4IARrmCP6+qPhgjqenR5lcXVFQR1bbnw9U/OZJtmf1BlXCKurMU1jKkJDuSqsYL7Dp+cHHhHaJTViSWwbV3rIX+YryG8+jron8c8w+lV0RcPuhRja4tOBJOWafN6jF/h5fB/8RsOSXals5gInLSxRIB1dFHGAaGVrfwR4VPvRgzjKiouCit4xu8cCIMd52a+vwZHJHKbb64RPcS3KoU= zuul-build-sshkey",
                                    "key_options": null,
                                    "keyfile": "/home/zuul/.ssh/authorized_keys",
                                    "manage_dir": true,
                                    "path": null,
                                    "state": "absent",
                                    "user": "zuul",
                                    "validate_certs": true
                                }
                            },
                            "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDkgFmORKYO0sIwqE9/X077+BV9LgKGyAnWBn7DqmsxqC0jEMHstsQxIF8hzgh+l+N5ERaGvSmiCtnth9eHQOi/2kqY0vw1FnbQrcdSVZWHG3QKnypBAhWU3GLbvOurIdeJJlXD4vgBuXlzYAxS5diejYrvR1P32qfElKm3bQPVGoRvGIxpPleJEbTx+mb0dbnHBtR8AEqnbiiFVaxAcX58XPUrSTBQxCGISbGL2gn0/W2q8mSFCQYz1LFzmsT/X+c+Ps8sVlKnQxmsKT5SwuHv2sfXleJqHLHNGS3yXg+ZnHzU4IARrmCP6+qPhgjqenR5lcXVFQR1bbnw9U/OZJtmf1BlXCKurMU1jKkJDuSqsYL7Dp+cHHhHaJTViSWwbV3rIX+YryG8+jron8c8w+lV0RcPuhRja4tOBJOWafN6jF/h5fB/8RsOSXals5gInLSxRIB1dFHGAaGVrfwR4VPvRgzjKiouCit4xu8cCIMd52a+vwZHJHKbb64RPcS3KoU= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "absent",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-b218-3f0c-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/27b80feb9aa4445caf5ba4a729588145/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-02-28T19:31:38.557970Z",
                            "start": "2026-02-28T19:31:38.067835Z"
                        },
                        "id": "0242ac17-0011-b218-3f0c-000000000018",
                        "name": "Remove the build SSH key from all nodes"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 4,
            "failures": 0,
            "ignored": 0,
            "ok": 5,
            "rescued": 0,
            "skipped": 1,
            "unreachable": 0
        }
    },
    "trusted": true
}
]
