[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "vexxhost.dev/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-01-22T21:46:29.273181Z",
                    "start": "2026-01-22T21:46:26.769689Z"
                },
                "id": "0242ac17-0010-2346-71fd-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-01-22",
                                    "day": "22",
                                    "epoch": "1769118387",
                                    "epoch_int": "1769118387",
                                    "hour": "21",
                                    "iso8601": "2026-01-22T21:46:27Z",
                                    "iso8601_basic": "20260122T214627626618",
                                    "iso8601_basic_short": "20260122T214627",
                                    "iso8601_micro": "2026-01-22T21:46:27.626618Z",
                                    "minute": "46",
                                    "month": "01",
                                    "second": "27",
                                    "time": "21:46:27",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Thursday",
                                    "weekday_number": "4",
                                    "weeknumber": "03",
                                    "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/29a6fd74017641beabd438e4ea4ffbb5/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work",
                                    "HOSTNAME": "3a2793d2bd32",
                                    "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/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_0/vexxhost.dev/zuul-config/playbooks/base",
                                    "PYTHONPATH": "/var/lib/zuul/ansible/9",
                                    "PYTHON_SHA256": "8fb5f9fbc7609fa822cb31549884575db7fd9657cbffb89510b5d7975963a83a",
                                    "PYTHON_VERSION": "3.11.13",
                                    "SSH_AGENT_PID": "1147032",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-72P2gOBGth6I/agent.1147031",
                                    "TMP": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "3a2793d2bd32",
                                "ansible_hostname": "3a2793d2bd32",
                                "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": 0.63134765625,
                                    "1m": 1.26953125,
                                    "5m": 0.72314453125
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 847,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 20747,
                                        "used": 11343
                                    },
                                    "real": {
                                        "free": 847,
                                        "total": 32090,
                                        "used": 31243
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 55118036,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 208822681,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 18728481,
                                        "inode_total": 67108864,
                                        "inode_used": 48380383,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 225763475456,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 10257112,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 30344468,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16972064,
                                        "inode_total": 20643840,
                                        "inode_used": 3671776,
                                        "mount": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 42013130752,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "3a2793d2bd32",
                                "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": 13,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        13,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.13",
                                "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": 32782117,
                                "ansible_user_dir": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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-01-22T21:46:27.717186Z",
                            "start": "2026-01-22T21:46:26.777815Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:27.742533Z",
                            "start": "2026-01-22T21:46:27.723056Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "29a/oss/29a6fd74017641beabd438e4ea4ffbb5"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:27.786557Z",
                            "start": "2026-01-22T21:46:27.755994Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.15\nJob: ansible-collection-kubernetes-molecule-bgp\nPipeline: check\nExecutor: 3a2793d2bd32\nTriggered by: https://github.com/vexxhost/ansible-collection-kubernetes/pull/229\nEvent ID: a4636040-f7db-11f0-909d-aaab0d2ecdc5\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:27.848049Z",
                            "start": "2026-01-22T21:46:27.795415Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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: np0000154409\nUsername: zuul\nDistro: Debian 13.3\nProvider: yul1\nRegion: ca-ymq-1\nLabel: debian-trixie\nProduct Name: OpenStack Nova\nInterface IP: 199.19.213.225\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:27.948902Z",
                            "start": "2026-01-22T21:46:27.851928Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:28.349705Z",
                            "start": "2026-01-22T21:46:27.962442Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "62128b84e1de56ba99324e80df3f0bc1bd000cda",
                            "dest": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "62128b84e1de56ba99324e80df3f0bc1bd000cda",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/.ansible/tmp/ansible-tmp-1769118388.3826098-84-42806449682017/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "acf9b63f4f6bc400060af67e32da3ea2",
                            "mode": "0644",
                            "owner": "root",
                            "size": 18069,
                            "src": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/.ansible/tmp/ansible-tmp-1769118388.3826098-84-42806449682017/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:29.273181Z",
                            "start": "2026-01-22T21:46:28.354400Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-01-22T21:46:36.524081Z",
                    "start": "2026-01-22T21:46:29.278864Z"
                },
                "id": "0242ac17-0010-2346-71fd-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/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:29.520300Z",
                            "start": "2026-01-22T21:46:29.285650Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:29.558725Z",
                            "start": "2026-01-22T21:46:29.527857Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.606607",
                            "end": "2026-01-22 21:46:30.600996",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_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-0010-2346-71fd-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-01-22 21:46:29.994389",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa.pub\nThe key fingerprint is:\nSHA256:AqtneNFhp1Z8tI3lg6RYdG4yNCeYytJ5VoJBW2sqg2s zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|   .oo.+* = .    |\n|    .o+*.X B     |\n|   ooo*oB B +    |\n| .. =Bo= =   .   |\n|. o.+o= S        |\n| . = o .         |\n|.Eo +            |\n|.  +             |\n|                 |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:AqtneNFhp1Z8tI3lg6RYdG4yNCeYytJ5VoJBW2sqg2s zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|   .oo.+* = .    |",
                                "|    .o+*.X B     |",
                                "|   ooo*oB B +    |",
                                "| .. =Bo= =   .   |",
                                "|. o.+o= S        |",
                                "| . = o .         |",
                                "|.Eo +            |",
                                "|.  +             |",
                                "|                 |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-2346-71fd-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:30.648887Z",
                            "start": "2026-01-22T21:46:29.578016Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:30.675447Z",
                            "start": "2026-01-22T21:46:30.654441Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:30.716317Z",
                            "start": "2026-01-22T21:46:30.691054Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQD3YIg3CknZbLUWUgAgPt8IeceMYtyaWmzklIaHznFLV/y84lhIPuO1akEn8SPX4I/RVkDTJZI3RdjDfNBqqRtldI4LHtzpXvFxBgnoOCbkQ5ifAbUiknIFj6gDBRU1eiVuDW1kpwB3481oG2eQ4rkET1Vmx073K+vn7l/xErPx/p94+bD/Z3AmsZxa6XwQtZAvrjKpEFHQ1JF11TDARlYvL1YqFG3YC25OWmc0CxV0RFaGvqQxAJ9fKX+R4JmILOwZDprq6Vaft1q4yW9a+0rbHnfM1v9gZgCy3ETYL+hGb64WK6JGczv5C9/mEm/ubTEMEhh91ohNRQpRodvXMs58kYdEci2jbwVqb9J9wm8qlvYnU/urSn6mchgjAkOdL2pA6JC/JWxI49c3IrzEz5xrnd1KPW6CTZ0cdcbMSIcn1JJlE2vBZOrDaQo1+D8AI3kK5JM95YbBdufNMqknGW2yklY/vBfS82TcLszPPJhwiGbXcCDolbPsj7u+gFb1HSk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQD3YIg3CknZbLUWUgAgPt8IeceMYtyaWmzklIaHznFLV/y84lhIPuO1akEn8SPX4I/RVkDTJZI3RdjDfNBqqRtldI4LHtzpXvFxBgnoOCbkQ5ifAbUiknIFj6gDBRU1eiVuDW1kpwB3481oG2eQ4rkET1Vmx073K+vn7l/xErPx/p94+bD/Z3AmsZxa6XwQtZAvrjKpEFHQ1JF11TDARlYvL1YqFG3YC25OWmc0CxV0RFaGvqQxAJ9fKX+R4JmILOwZDprq6Vaft1q4yW9a+0rbHnfM1v9gZgCy3ETYL+hGb64WK6JGczv5C9/mEm/ubTEMEhh91ohNRQpRodvXMs58kYdEci2jbwVqb9J9wm8qlvYnU/urSn6mchgjAkOdL2pA6JC/JWxI49c3IrzEz5xrnd1KPW6CTZ0cdcbMSIcn1JJlE2vBZOrDaQo1+D8AI3kK5JM95YbBdufNMqknGW2yklY/vBfS82TcLszPPJhwiGbXcCDolbPsj7u+gFb1HSk= 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-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:31.295807Z",
                            "start": "2026-01-22T21:46:30.725812Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:31.575427Z",
                            "start": "2026-01-22T21:46:31.300709Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "76cebac8b0ddfbf57eff45784679d17995374d9e",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "29a6fd74017641beabd438e4ea4ffbb5_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "76cebac8b0ddfbf57eff45784679d17995374d9e",
                                    "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-1769118391.6324239-190-266163828250601/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "aa349c9a893dbe1edb713005ee3417d3",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1769118391.6324239-190-266163828250601/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:32.112785Z",
                            "start": "2026-01-22T21:46:31.583624Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "b9b566f3f5ec0ceb6061486d988fd1180444e9de",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "29a6fd74017641beabd438e4ea4ffbb5_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "b9b566f3f5ec0ceb6061486d988fd1180444e9de",
                                    "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-1769118392.164738-200-142681263767425/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "020bcf4f438f546e0e99da1263a1a4e9",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1769118392.164738-200-142681263767425/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:32.671708Z",
                            "start": "2026-01-22T21:46:32.118083Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:32.696403Z",
                            "start": "2026-01-22T21:46:32.675533Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:33.117122Z",
                            "start": "2026-01-22T21:46:32.705087Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa"
                            ],
                            "delta": "0:00:00.012621",
                            "end": "2026-01-22 21:46:33.386785",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_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-0010-2346-71fd-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-01-22 21:46:33.374164",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/29a6fd74017641beabd438e4ea4ffbb5_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-2346-71fd-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:33.427630Z",
                            "start": "2026-01-22T21:46:33.131473Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:33.780290Z",
                            "start": "2026-01-22T21:46:33.432904Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:33.811896Z",
                            "start": "2026-01-22T21:46:33.786138Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:34.203602Z",
                            "start": "2026-01-22T21:46:33.823279Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:35.241230Z",
                            "start": "2026-01-22T21:46:34.210731Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-0010-2346-71fd-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:35.871295Z",
                            "start": "2026-01-22T21:46:35.247774Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "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",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "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",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "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",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-2346-71fd-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:36.524081Z",
                            "start": "2026-01-22T21:46:35.879706Z"
                        },
                        "id": "0242ac17-0010-2346-71fd-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-01-22T21:46:40.251366Z",
                    "start": "2026-01-22T21:46:37.261674Z"
                },
                "id": "0242ac17-0010-d4c9-bc3b-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.unarchive",
                            "changed": true,
                            "dest": "/usr/local/bin",
                            "extract_results": {
                                "cmd": [
                                    "/usr/bin/tar",
                                    "--extract",
                                    "-C",
                                    "/usr/local/bin",
                                    "-z",
                                    "--show-transformed-names",
                                    "--strip-components=1",
                                    "-f",
                                    "/home/zuul/.ansible/tmp/ansible-tmp-1769118397.314278-5-83435123185641/uv-x86_64-unknown-linux-gnuakw5go0n.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",
                            "size": 4096,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1769118397.314278-5-83435123185641/uv-x86_64-unknown-linux-gnuakw5go0n.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d4c9-bc3b-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:39.716442Z",
                            "start": "2026-01-22T21:46:37.272822Z"
                        },
                        "id": "0242ac17-0010-d4c9-bc3b-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.010445",
                            "end": "2026-01-22 21:46:40.121667",
                            "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-0010-d4c9-bc3b-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-01-22 21:46:40.111222",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-d4c9-bc3b-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d4c9-bc3b-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:40.251366Z",
                            "start": "2026-01-22T21:46:39.734938Z"
                        },
                        "id": "0242ac17-0010-d4c9-bc3b-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-01-22T21:52:03.658651Z",
                    "start": "2026-01-22T21:46:40.942492Z"
                },
                "id": "0242ac17-0010-2253-ba6a-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "62128b84e1de56ba99324e80df3f0bc1bd000cda",
                            "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": "62128b84e1de56ba99324e80df3f0bc1bd000cda",
                                    "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-1769118400.9901962-5-268450688450322/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "acf9b63f4f6bc400060af67e32da3ea2",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 18069,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1769118400.9901962-5-268450688450322/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:46:41.926077Z",
                            "start": "2026-01-22T21:46:40.953569Z"
                        },
                        "id": "0242ac17-0010-2253-ba6a-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-01-22T21:46:42.228875Z",
                            "start": "2026-01-22T21:46:41.931111Z"
                        },
                        "id": "0242ac17-0010-2253-ba6a-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "bgp"
                            ],
                            "delta": "0:05:20.938454",
                            "end": "2026-01-22 21:52:03.592522",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s bgp",
                                    "_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-0010-2253-ba6a-000000000006-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-01-22 21:46:42.654068",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Using CPython 3.13.5 interpreter at: /usr/bin/python3\nCreating virtual environment at: .venv\nDownloading pygments (1.2MiB)\nDownloading cryptography (4.3MiB)\nDownloading ansible-core (2.3MiB)\n Downloading cryptography\n Downloading pygments\n Downloading ansible-core\nInstalled 36 packages in 52ms\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     [bgp > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [bgp > prerun] Performing prerun with role_name_check=0...\nINFO     [bgp > dependency] Executing\nWARNING  [bgp > dependency] Missing roles requirements file: requirements.yml\nWARNING  [bgp > dependency] Missing collections requirements file: collections.yml\nWARNING  [bgp > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [bgp > cleanup] Executing\nWARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > destroy] Executing\nWARNING  [bgp > destroy] Skipping, '--destroy=never' requested.\nINFO     [bgp > destroy] Executed: Successful\nINFO     [bgp > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml\nINFO     [bgp > syntax] Executed: Successful\nINFO     [bgp > create] Executing\nWARNING  [bgp > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:47:10 +0000 (0:00:00.034)       0:00:00.034 ******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nThursday 22 January 2026  21:47:11 +0000 (0:00:01.287)       0:00:01.322 ******\nok: [controller]\n\nPLAY [Prepare BGP] *************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:47:17 +0000 (0:00:05.688)       0:00:07.010 ******\nok: [controller]\n\nTASK [Enable IP forwarding] ****************************************************\nThursday 22 January 2026  21:47:18 +0000 (0:00:00.751)       0:00:07.761 ******\nchanged: [controller]\n\nTASK [Add FRR repository] ******************************************************\nThursday 22 January 2026  21:47:18 +0000 (0:00:00.447)       0:00:08.209 ******\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 [Install frr packages] ****************************************************\nThursday 22 January 2026  21:47:22 +0000 (0:00:04.221)       0:00:12.431 ******\nchanged: [controller]\n\nTASK [Ensure bgpd is enabled] **************************************************\nThursday 22 January 2026  21:47:43 +0000 (0:00:20.859)       0:00:33.291 ******\nchanged: [controller]\n\nTASK [Update FRR configuration] ************************************************\nThursday 22 January 2026  21:47:44 +0000 (0:00:00.385)       0:00:33.676 ******\nchanged: [controller]\n\nTASK [Restart service frr] *****************************************************\nThursday 22 January 2026  21:47:45 +0000 (0:00:00.889)       0:00:34.566 ******\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=9    changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nThursday 22 January 2026  21:47:51 +0000 (0:00:06.118)       0:00:40.685 ******\n===============================================================================\nInstall frr packages --------------------------------------------------- 20.86s\nRestart service frr ----------------------------------------------------- 6.12s\nInstall Debian packages ------------------------------------------------- 5.69s\nAdd FRR repository ------------------------------------------------------ 4.22s\nGathering Facts --------------------------------------------------------- 1.29s\nUpdate FRR configuration ------------------------------------------------ 0.89s\nGathering Facts --------------------------------------------------------- 0.75s\nEnable IP forwarding ---------------------------------------------------- 0.45s\nEnsure bgpd is enabled -------------------------------------------------- 0.39s\nINFO     [bgp > prepare] Executed: Successful\nINFO     [bgp > converge] Executing\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:47:52 +0000 (0:00:00.016)       0:00:00.016 ******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nThursday 22 January 2026  21:47:53 +0000 (0:00:01.034)       0:00:01.051 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nThursday 22 January 2026  21:47:53 +0000 (0:00:00.419)       0:00:01.470 ******\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] ****\nThursday 22 January 2026  21:47:55 +0000 (0:00:01.410)       0:00:02.881 ******\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] *********\nThursday 22 January 2026  21:47:56 +0000 (0:00:00.952)       0:00:03.834 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nThursday 22 January 2026  21:47:56 +0000 (0:00:00.417)       0:00:04.252 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nThursday 22 January 2026  21:47:57 +0000 (0:00:00.299)       0:00:04.552 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nThursday 22 January 2026  21:47:57 +0000 (0:00:00.024)       0:00:04.576 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nThursday 22 January 2026  21:47:57 +0000 (0:00:00.032)       0:00:04.608 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nThursday 22 January 2026  21:47:57 +0000 (0:00:00.876)       0:00:05.485 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nThursday 22 January 2026  21:47:58 +0000 (0:00:00.280)       0:00:05.765 ******\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:47:58 +0000 (0:00:00.048)       0:00:05.814 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:47:59 +0000 (0:00:00.774)       0:00:06.588 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:47:59 +0000 (0:00:00.297)       0:00:06.885 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nThursday 22 January 2026  21:47:59 +0000 (0:00:00.037)       0:00:06.923 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:47:59 +0000 (0:00:00.301)       0:00:07.224 ******\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] *******************\nThursday 22 January 2026  21:47:59 +0000 (0:00:00.088)       0:00:07.313 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:01 +0000 (0:00:01.307)       0:00:08.621 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:01 +0000 (0:00:00.041)       0:00:08.662 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:48:01 +0000 (0:00:00.295)       0:00:08.958 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:02 +0000 (0:00:00.953)       0:00:09.911 ******\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] *******************\nThursday 22 January 2026  21:48:02 +0000 (0:00:00.067)       0:00:09.979 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:03 +0000 (0:00:01.187)       0:00:11.167 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 22 January 2026  21:48:06 +0000 (0:00:03.071)       0:00:14.238 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 22 January 2026  21:48:06 +0000 (0:00:00.031)       0:00:14.270 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 22 January 2026  21:48:06 +0000 (0:00:00.027)       0:00:14.298 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 22 January 2026  21:48:06 +0000 (0:00:00.024)       0:00:14.323 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 22 January 2026  21:48:12 +0000 (0:00:05.971)       0:00:20.295 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 22 January 2026  21:48:13 +0000 (0:00:00.622)       0:00:20.918 ******\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] **********\nThursday 22 January 2026  21:48:14 +0000 (0:00:01.337)       0:00:22.255 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 22 January 2026  21:48:15 +0000 (0:00:00.757)       0:00:23.013 ******\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nThursday 22 January 2026  21:48:15 +0000 (0:00:00.006)       0:00:23.020 ******\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nThursday 22 January 2026  21:48:16 +0000 (0:00:00.862)       0:00:23.882 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 22 January 2026  21:48:18 +0000 (0:00:01.688)       0:00:25.570 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nThursday 22 January 2026  21:48:18 +0000 (0:00:00.735)       0:00:26.305 ******\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000154409's Python /usr/bin/python3.13. 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 np0000154409's Python /usr/bin/python3.13. 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] ***\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.690)       0:00:26.996 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.029)       0:00:27.025 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.030)       0:00:27.056 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.034)       0:00:27.091 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.034)       0:00:27.126 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.042)       0:00:27.168 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.287)       0:00:27.455 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:48:19 +0000 (0:00:00.038)       0:00:27.494 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:21 +0000 (0:00:01.292)       0:00:28.787 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:21 +0000 (0:00:00.041)       0:00:28.828 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:21 +0000 (0:00:00.280)       0:00:29.109 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:48:21 +0000 (0:00:00.044)       0:00:29.153 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:22 +0000 (0:00:01.156)       0:00:30.309 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 22 January 2026  21:48:22 +0000 (0:00:00.045)       0:00:30.355 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 22 January 2026  21:48:22 +0000 (0:00:00.031)       0:00:30.386 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 22 January 2026  21:48:22 +0000 (0:00:00.032)       0:00:30.418 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 22 January 2026  21:48:22 +0000 (0:00:00.028)       0:00:30.446 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 22 January 2026  21:48:23 +0000 (0:00:00.813)       0:00:31.260 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 22 January 2026  21:48:24 +0000 (0:00:00.555)       0:00:31.815 ******\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] **********\nThursday 22 January 2026  21:48:25 +0000 (0:00:01.282)       0:00:33.098 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 22 January 2026  21:48:26 +0000 (0:00:00.675)       0:00:33.774 ******\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 22 January 2026  21:48:26 +0000 (0:00:00.005)       0:00:33.780 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:26 +0000 (0:00:00.461)       0:00:34.241 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:26 +0000 (0:00:00.282)       0:00:34.524 ******\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] *******************\nThursday 22 January 2026  21:48:27 +0000 (0:00:00.061)       0:00:34.586 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:28 +0000 (0:00:01.592)       0:00:36.178 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:30 +0000 (0:00:01.614)       0:00:37.793 ******\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] *******************\nThursday 22 January 2026  21:48:30 +0000 (0:00:00.055)       0:00:37.848 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:32 +0000 (0:00:02.439)       0:00:40.287 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nThursday 22 January 2026  21:48:34 +0000 (0:00:01.723)       0:00:42.011 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nThursday 22 January 2026  21:48:35 +0000 (0:00:00.716)       0:00:42.727 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:35 +0000 (0:00:00.340)       0:00:43.067 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:35 +0000 (0:00:00.292)       0:00:43.360 ******\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] *******************\nThursday 22 January 2026  21:48:35 +0000 (0:00:00.065)       0:00:43.426 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:36 +0000 (0:00:01.028)       0:00:44.454 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nThursday 22 January 2026  21:48:39 +0000 (0:00:02.915)       0:00:47.370 ******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nThursday 22 January 2026  21:48:39 +0000 (0:00:00.048)       0:00:47.418 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nThursday 22 January 2026  21:48:42 +0000 (0:00:02.484)       0:00:49.903 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nThursday 22 January 2026  21:48:42 +0000 (0:00:00.415)       0:00:50.318 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nThursday 22 January 2026  21:48:43 +0000 (0:00:00.632)       0:00:50.950 ******\nchanged: [controller] => (item=br_netfilter)\nok: [controller] => (item=ip_tables)\nchanged: [controller] => (item=ip6_tables)\nchanged: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:48:44 +0000 (0:00:01.406)       0:00:52.357 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:48:45 +0000 (0:00:00.287)       0:00:52.644 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:48:45 +0000 (0:00:00.042)       0:00:52.687 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:48:46 +0000 (0:00:01.063)       0:00:53.750 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nThursday 22 January 2026  21:48:46 +0000 (0:00:00.030)       0:00:53.781 ******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nThursday 22 January 2026  21:48:46 +0000 (0:00:00.047)       0:00:53.829 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nThursday 22 January 2026  21:48:46 +0000 (0:00:00.028)       0:00:53.857 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nThursday 22 January 2026  21:48:48 +0000 (0:00:02.582)       0:00:56.440 ******\nok: [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] ***\nThursday 22 January 2026  21:48:50 +0000 (0:00:02.036)       0:00:58.477 ******\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] ********\nThursday 22 January 2026  21:48:51 +0000 (0:00:00.806)       0:00:59.283 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nThursday 22 January 2026  21:48:52 +0000 (0:00:00.638)       0:00:59.922 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nThursday 22 January 2026  21:48:52 +0000 (0:00:00.593)       0:01:00.516 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nThursday 22 January 2026  21:48:53 +0000 (0:00:00.375)       0:01:00.891 ******\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] ***********\nThursday 22 January 2026  21:48:53 +0000 (0:00:00.035)       0:01:00.927 ******\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nThursday 22 January 2026  21:48:54 +0000 (0:00:00.744)       0:01:01.672 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nThursday 22 January 2026  21:48:54 +0000 (0:00:00.634)       0:01:02.307 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nThursday 22 January 2026  21:48:55 +0000 (0:00:00.697)       0:01:03.004 ******\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nThursday 22 January 2026  21:48:55 +0000 (0:00:00.007)       0:01:03.012 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nThursday 22 January 2026  21:48:57 +0000 (0:00:01.649)       0:01:04.661 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nThursday 22 January 2026  21:48:57 +0000 (0:00:00.749)       0:01:05.411 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nThursday 22 January 2026  21:48:58 +0000 (0:00:00.882)       0:01:06.294 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nThursday 22 January 2026  21:48:59 +0000 (0:00:00.926)       0:01:07.220 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nThursday 22 January 2026  21:49:00 +0000 (0:00:00.432)       0:01:07.653 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nThursday 22 January 2026  21:49:00 +0000 (0:00:00.504)       0:01:08.158 ******\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nThursday 22 January 2026  21:49:00 +0000 (0:00:00.084)       0:01:08.242 ******\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] ***\nThursday 22 January 2026  21:49:00 +0000 (0:00:00.085)       0:01:08.328 ******\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.322)       0:01:08.650 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.051)       0:01:08.702 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.057)       0:01:08.759 ******\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.049)       0:01:08.809 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.678)       0:01:09.487 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nThursday 22 January 2026  21:49:01 +0000 (0:00:00.035)       0:01:09.522 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.030)       0:01:09.553 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.036)       0:01:09.590 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.039)       0:01:09.629 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.665 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.700 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nThursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.736 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nThursday 22 January 2026  21:50:08 +0000 (0:01:05.795)       0:02:15.532 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nThursday 22 January 2026  21:50:08 +0000 (0:00:00.352)       0:02:15.885 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nThursday 22 January 2026  21:50:08 +0000 (0:00:00.036)       0:02:15.922 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nThursday 22 January 2026  21:50:08 +0000 (0:00:00.329)       0:02:16.251 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nThursday 22 January 2026  21:50:09 +0000 (0:00:00.332)       0:02:16.584 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nThursday 22 January 2026  21:50:09 +0000 (0:00:00.325)       0:02:16.910 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nThursday 22 January 2026  21:50:09 +0000 (0:00:00.049)       0:02:16.959 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nThursday 22 January 2026  21:50:09 +0000 (0:00:00.050)       0:02:17.009 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nThursday 22 January 2026  21:50:09 +0000 (0:00:00.046)       0:02:17.056 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nThursday 22 January 2026  21:50:20 +0000 (0:00:10.488)       0:02:27.544 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nThursday 22 January 2026  21:50:21 +0000 (0:00:01.104)       0:02:28.648 ******\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.041)       0:02:28.690 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.044)       0:02:28.734 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.037)       0:02:28.772 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.036)       0:02:28.809 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.037)       0:02:28.847 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nThursday 22 January 2026  21:50:21 +0000 (0:00:00.546)       0:02:29.393 ******\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:50:23 +0000 (0:00:01.748)       0:02:31.141 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:50:24 +0000 (0:00:00.912)       0:02:32.054 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:50:24 +0000 (0:00:00.340)       0:02:32.395 ******\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nThursday 22 January 2026  21:50:25 +0000 (0:00:01.035)       0:02:33.430 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:50:26 +0000 (0:00:00.342)       0:02:33.772 ******\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] *******************\nThursday 22 January 2026  21:50:26 +0000 (0:00:00.047)       0:02:33.820 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:50:27 +0000 (0:00:01.005)       0:02:34.825 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nThursday 22 January 2026  21:50:29 +0000 (0:00:01.857)       0:02:36.683 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nThursday 22 January 2026  21:50:29 +0000 (0:00:00.405)       0:02:37.088 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nThursday 22 January 2026  21:50:29 +0000 (0:00:00.320)       0:02:37.409 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nThursday 22 January 2026  21:50:30 +0000 (0:00:00.377)       0:02:37.786 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nThursday 22 January 2026  21:50:30 +0000 (0:00:00.320)       0:02:38.106 ******\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nThursday 22 January 2026  21:50:30 +0000 (0:00:00.340)       0:02:38.447 ******\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:50:30 +0000 (0:00:00.073)       0:02:38.520 ******\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] *******************\nThursday 22 January 2026  21:50:31 +0000 (0:00:00.045)       0:02:38.566 ******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:50:31 +0000 (0:00:00.836)       0:02:39.403 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nThursday 22 January 2026  21:50:34 +0000 (0:00:02.261)       0:02:41.665 ******\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] ***************\nThursday 22 January 2026  21:50:34 +0000 (0:00:00.068)       0:02:41.733 ******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nThursday 22 January 2026  21:50:35 +0000 (0:00:00.818)       0:02:42.551 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nThursday 22 January 2026  21:50:36 +0000 (0:00:01.012)       0:02:43.563 ******\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=112  changed=52   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3\n\n\nTASKS RECAP ********************************************************************\nThursday 22 January 2026  21:50:38 +0000 (0:00:02.591)       0:02:46.155 ******\n===============================================================================\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 65.80s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems -- 10.49s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 5.97s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.34s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.07s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.92s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.59s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 2.58s\nvexxhost.containers.cni_plugins : Install additional packages ----------- 2.48s\nvexxhost.containers.download_artifact : Download item ------------------- 2.44s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.26s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.04s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.86s\nvexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.75s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.72s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.61s\nvexxhost.containers.download_artifact : Download item ------------------- 1.59s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.41s\nvexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.41s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.34s\nINFO     [bgp > converge] Executed: Successful\nINFO     [bgp > idempotence] Executing\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:50:40 +0000 (0:00:00.019)       0:00:00.019 ******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nThursday 22 January 2026  21:50:41 +0000 (0:00:01.306)       0:00:01.326 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nThursday 22 January 2026  21:50:42 +0000 (0:00:00.478)       0:00:01.804 ******\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] ****\nThursday 22 January 2026  21:50:43 +0000 (0:00:01.590)       0:00:03.395 ******\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] *********\nThursday 22 January 2026  21:50:44 +0000 (0:00:01.165)       0:00:04.560 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nThursday 22 January 2026  21:50:45 +0000 (0:00:00.477)       0:00:05.038 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nThursday 22 January 2026  21:50:45 +0000 (0:00:00.371)       0:00:05.409 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nThursday 22 January 2026  21:50:45 +0000 (0:00:00.039)       0:00:05.448 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nThursday 22 January 2026  21:50:45 +0000 (0:00:00.043)       0:00:05.491 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nThursday 22 January 2026  21:50:46 +0000 (0:00:00.860)       0:00:06.352 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nThursday 22 January 2026  21:50:47 +0000 (0:00:00.371)       0:00:06.724 ******\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:50:47 +0000 (0:00:00.058)       0:00:06.782 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:50:48 +0000 (0:00:00.952)       0:00:07.735 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:50:48 +0000 (0:00:00.358)       0:00:08.093 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nThursday 22 January 2026  21:50:48 +0000 (0:00:00.029)       0:00:08.123 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:50:48 +0000 (0:00:00.325)       0:00:08.448 ******\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] *******************\nThursday 22 January 2026  21:50:48 +0000 (0:00:00.072)       0:00:08.520 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:50:49 +0000 (0:00:00.832)       0:00:09.353 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:50:49 +0000 (0:00:00.044)       0:00:09.398 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:50:50 +0000 (0:00:00.317)       0:00:09.715 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:50:51 +0000 (0:00:01.185)       0:00:10.901 ******\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] *******************\nThursday 22 January 2026  21:50:51 +0000 (0:00:00.092)       0:00:10.993 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:50:51 +0000 (0:00:00.530)       0:00:11.524 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 22 January 2026  21:50:54 +0000 (0:00:02.871)       0:00:14.396 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 22 January 2026  21:50:54 +0000 (0:00:00.032)       0:00:14.428 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 22 January 2026  21:50:54 +0000 (0:00:00.028)       0:00:14.457 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 22 January 2026  21:50:54 +0000 (0:00:00.036)       0:00:14.493 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 22 January 2026  21:50:56 +0000 (0:00:01.136)       0:00:15.630 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 22 January 2026  21:50:56 +0000 (0:00:00.757)       0:00:16.387 ******\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] **********\nThursday 22 January 2026  21:50:58 +0000 (0:00:01.610)       0:00:17.997 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 22 January 2026  21:50:59 +0000 (0:00:00.760)       0:00:18.758 ******\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 22 January 2026  21:50:59 +0000 (0:00:00.006)       0:00:18.765 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nThursday 22 January 2026  21:51:00 +0000 (0:00:01.062)       0:00:19.827 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nThursday 22 January 2026  21:51:01 +0000 (0:00:01.310)       0:00:21.137 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nThursday 22 January 2026  21:51:01 +0000 (0:00:00.067)       0:00:21.205 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nThursday 22 January 2026  21:51:01 +0000 (0:00:00.050)       0:00:21.255 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nThursday 22 January 2026  21:51:01 +0000 (0:00:00.057)       0:00:21.312 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nThursday 22 January 2026  21:51:01 +0000 (0:00:00.049)       0:00:21.362 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:51:01 +0000 (0:00:00.062)       0:00:21.425 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:02 +0000 (0:00:00.414)       0:00:21.839 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:51:02 +0000 (0:00:00.061)       0:00:21.901 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:02 +0000 (0:00:00.509)       0:00:22.410 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:51:02 +0000 (0:00:00.043)       0:00:22.454 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:03 +0000 (0:00:00.517)       0:00:22.971 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:51:03 +0000 (0:00:00.090)       0:00:23.061 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:04 +0000 (0:00:00.593)       0:00:23.655 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 22 January 2026  21:51:04 +0000 (0:00:00.049)       0:00:23.704 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 22 January 2026  21:51:04 +0000 (0:00:00.027)       0:00:23.732 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 22 January 2026  21:51:04 +0000 (0:00:00.030)       0:00:23.762 ******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 22 January 2026  21:51:04 +0000 (0:00:00.033)       0:00:23.796 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 22 January 2026  21:51:05 +0000 (0:00:01.178)       0:00:24.975 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 22 January 2026  21:51:06 +0000 (0:00:00.796)       0:00:25.771 ******\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] **********\nThursday 22 January 2026  21:51:07 +0000 (0:00:01.659)       0:00:27.431 ******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 22 January 2026  21:51:08 +0000 (0:00:00.839)       0:00:28.270 ******\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 22 January 2026  21:51:08 +0000 (0:00:00.007)       0:00:28.278 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:51:09 +0000 (0:00:00.533)       0:00:28.811 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:09 +0000 (0:00:00.371)       0:00:29.183 ******\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] *******************\nThursday 22 January 2026  21:51:09 +0000 (0:00:00.084)       0:00:29.267 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:10 +0000 (0:00:00.552)       0:00:29.820 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:11 +0000 (0:00:01.475)       0:00:31.296 ******\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] *******************\nThursday 22 January 2026  21:51:11 +0000 (0:00:00.090)       0:00:31.387 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:12 +0000 (0:00:00.521)       0:00:31.908 ******\nok: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nThursday 22 January 2026  21:51:13 +0000 (0:00:01.386)       0:00:33.294 ******\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nThursday 22 January 2026  21:51:14 +0000 (0:00:00.717)       0:00:34.011 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:51:14 +0000 (0:00:00.306)       0:00:34.317 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:15 +0000 (0:00:00.338)       0:00:34.656 ******\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] *******************\nThursday 22 January 2026  21:51:15 +0000 (0:00:00.069)       0:00:34.726 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:15 +0000 (0:00:00.491)       0:00:35.217 ******\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nThursday 22 January 2026  21:51:17 +0000 (0:00:02.246)       0:00:37.464 ******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nThursday 22 January 2026  21:51:17 +0000 (0:00:00.059)       0:00:37.523 ******\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nThursday 22 January 2026  21:51:18 +0000 (0:00:00.996)       0:00:38.519 ******\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nThursday 22 January 2026  21:51:19 +0000 (0:00:00.497)       0:00:39.017 ******\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nThursday 22 January 2026  21:51:20 +0000 (0:00:00.642)       0:00:39.660 ******\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] *********************\nThursday 22 January 2026  21:51:21 +0000 (0:00:01.278)       0:00:40.938 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:21 +0000 (0:00:00.325)       0:00:41.264 ******\nok: [controller] => {\n    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 22 January 2026  21:51:21 +0000 (0:00:00.044)       0:00:41.309 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:22 +0000 (0:00:00.466)       0:00:41.775 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nThursday 22 January 2026  21:51:22 +0000 (0:00:00.042)       0:00:41.817 ******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nThursday 22 January 2026  21:51:22 +0000 (0:00:00.061)       0:00:41.878 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nThursday 22 January 2026  21:51:22 +0000 (0:00:00.037)       0:00:41.915 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nThursday 22 January 2026  21:51:23 +0000 (0:00:00.965)       0:00:42.881 ******\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] ***\nThursday 22 January 2026  21:51:25 +0000 (0:00:02.259)       0:00:45.141 ******\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] ********\nThursday 22 January 2026  21:51:26 +0000 (0:00:00.855)       0:00:45.997 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nThursday 22 January 2026  21:51:27 +0000 (0:00:00.657)       0:00:46.655 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nThursday 22 January 2026  21:51:27 +0000 (0:00:00.630)       0:00:47.286 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nThursday 22 January 2026  21:51:28 +0000 (0:00:00.416)       0:00:47.702 ******\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] ***********\nThursday 22 January 2026  21:51:28 +0000 (0:00:00.035)       0:00:47.738 ******\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nThursday 22 January 2026  21:51:28 +0000 (0:00:00.811)       0:00:48.550 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nThursday 22 January 2026  21:51:29 +0000 (0:00:00.662)       0:00:49.213 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nThursday 22 January 2026  21:51:30 +0000 (0:00:00.514)       0:00:49.727 ******\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nThursday 22 January 2026  21:51:30 +0000 (0:00:00.005)       0:00:49.733 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nThursday 22 January 2026  21:51:30 +0000 (0:00:00.486)       0:00:50.220 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nThursday 22 January 2026  21:51:31 +0000 (0:00:00.999)       0:00:51.219 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nThursday 22 January 2026  21:51:32 +0000 (0:00:01.051)       0:00:52.271 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nThursday 22 January 2026  21:51:33 +0000 (0:00:00.456)       0:00:52.727 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nThursday 22 January 2026  21:51:33 +0000 (0:00:00.539)       0:00:53.267 ******\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nThursday 22 January 2026  21:51:33 +0000 (0:00:00.092)       0:00:53.360 ******\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] ***\nThursday 22 January 2026  21:51:33 +0000 (0:00:00.094)       0:00:53.454 ******\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nThursday 22 January 2026  21:51:34 +0000 (0:00:00.354)       0:00:53.809 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nThursday 22 January 2026  21:51:34 +0000 (0:00:00.061)       0:00:53.870 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nThursday 22 January 2026  21:51:34 +0000 (0:00:00.045)       0:00:53.916 ******\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nThursday 22 January 2026  21:51:34 +0000 (0:00:00.047)       0:00:53.964 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.707)       0:00:54.671 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.030)       0:00:54.702 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.035)       0:00:54.738 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.039)       0:00:54.777 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.031)       0:00:54.808 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.029)       0:00:54.838 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.045)       0:00:54.883 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.035)       0:00:54.919 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.318)       0:00:55.238 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nThursday 22 January 2026  21:51:35 +0000 (0:00:00.328)       0:00:55.566 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nThursday 22 January 2026  21:51:36 +0000 (0:00:00.038)       0:00:55.605 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nThursday 22 January 2026  21:51:36 +0000 (0:00:00.380)       0:00:55.985 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nThursday 22 January 2026  21:51:36 +0000 (0:00:00.337)       0:00:56.323 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nThursday 22 January 2026  21:51:37 +0000 (0:00:00.329)       0:00:56.653 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nThursday 22 January 2026  21:51:37 +0000 (0:00:00.047)       0:00:56.700 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nThursday 22 January 2026  21:51:37 +0000 (0:00:00.046)       0:00:56.746 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nThursday 22 January 2026  21:51:37 +0000 (0:00:00.042)       0:00:56.789 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nThursday 22 January 2026  21:51:38 +0000 (0:00:01.092)       0:00:57.882 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nThursday 22 January 2026  21:51:39 +0000 (0:00:01.039)       0:00:58.921 ******\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nThursday 22 January 2026  21:51:39 +0000 (0:00:00.059)       0:00:58.981 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nThursday 22 January 2026  21:51:39 +0000 (0:00:00.046)       0:00:59.027 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nThursday 22 January 2026  21:51:39 +0000 (0:00:00.040)       0:00:59.068 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nThursday 22 January 2026  21:51:39 +0000 (0:00:00.034)       0:00:59.102 ******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nThursday 22 January 2026  21:51:39 +0000 (0:00:00.042)       0:00:59.145 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nThursday 22 January 2026  21:51:40 +0000 (0:00:00.639)       0:00:59.784 ******\nok: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:51:41 +0000 (0:00:01.423)       0:01:01.207 ******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 22 January 2026  21:51:43 +0000 (0:00:01.981)       0:01:03.189 ******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 22 January 2026  21:51:43 +0000 (0:00:00.309)       0:01:03.499 ******\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nThursday 22 January 2026  21:51:44 +0000 (0:00:00.950)       0:01:04.449 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:45 +0000 (0:00:00.328)       0:01:04.777 ******\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] *******************\nThursday 22 January 2026  21:51:45 +0000 (0:00:00.046)       0:01:04.824 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:45 +0000 (0:00:00.443)       0:01:05.267 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nThursday 22 January 2026  21:51:47 +0000 (0:00:01.593)       0:01:06.861 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nThursday 22 January 2026  21:51:47 +0000 (0:00:00.421)       0:01:07.283 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nThursday 22 January 2026  21:51:48 +0000 (0:00:00.330)       0:01:07.614 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nThursday 22 January 2026  21:51:48 +0000 (0:00:00.366)       0:01:07.981 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nThursday 22 January 2026  21:51:48 +0000 (0:00:00.332)       0:01:08.314 ******\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nThursday 22 January 2026  21:51:49 +0000 (0:00:00.301)       0:01:08.616 ******\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 22 January 2026  21:51:49 +0000 (0:00:00.061)       0:01:08.677 ******\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] *******************\nThursday 22 January 2026  21:51:49 +0000 (0:00:00.053)       0:01:08.731 ******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 22 January 2026  21:51:49 +0000 (0:00:00.470)       0:01:09.202 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nThursday 22 January 2026  21:51:51 +0000 (0:00:01.798)       0:01:11.000 ******\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] ***************\nThursday 22 January 2026  21:51:51 +0000 (0:00:00.050)       0:01:11.051 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nThursday 22 January 2026  21:51:52 +0000 (0:00:00.787)       0:01:11.839 ******\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nThursday 22 January 2026  21:51:53 +0000 (0:00:01.067)       0:01:12.907 ******\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=113  changed=0    unreachable=0    failed=0    skipped=30   rescued=0    ignored=1\n\n\nTASKS RECAP ********************************************************************\nThursday 22 January 2026  21:51:55 +0000 (0:00:02.402)       0:01:15.309 ******\n===============================================================================\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.87s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.40s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.26s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.25s\nGathering Facts --------------------------------------------------------- 1.98s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.80s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.66s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.61s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.59s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.59s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.48s\nvexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.42s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.39s\nvexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap --- 1.31s\nGathering Facts --------------------------------------------------------- 1.31s\nvexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.28s\nvexxhost.containers.package : Update state for tar ---------------------- 1.19s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 1.18s\nvexxhost.kubernetes.kube_vip : Switch API server to run on port 6443 ---- 1.17s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 1.14s\nINFO     [bgp > idempotence] Executed: Successful\nINFO     [bgp > side_effect] Executing\nWARNING  [bgp > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > verify] Executing\n\nPLAY [Verify] ******************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:51:56 +0000 (0:00:00.009)       0:00:00.009 ******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Gather service facts] ****************************************************\nThursday 22 January 2026  21:51:58 +0000 (0:00:01.265)       0:00:01.274 ******\nok: [controller]\n\nTASK [Make sure kubelet service is running] ************************************\nThursday 22 January 2026  21:52:01 +0000 (0:00:03.392)       0:00:04.667 ******\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Make sure kubelet service is enabled] ************************************\nThursday 22 January 2026  21:52:01 +0000 (0:00:00.039)       0:00:04.706 ******\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Get all nodes] ***********************************************************\nThursday 22 January 2026  21:52:01 +0000 (0:00:00.033)       0:00:04.739 ******\nchanged: [controller]\n\nTASK [Print node list] *********************************************************\nThursday 22 January 2026  21:52:01 +0000 (0:00:00.474)       0:00:05.214 ******\nok: [controller] => {\n    \"msg\": [\n        \"NAME         STATUS   ROLES           AGE    VERSION\",\n        \"controller   Ready    control-plane   118s   v1.34.0\"\n    ]\n}\n\nTASK [Assert no nody is not ready] *********************************************\nThursday 22 January 2026  21:52:01 +0000 (0:00:00.035)       0:00:05.250 ******\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nPLAY [verify BGP] **************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 22 January 2026  21:52:02 +0000 (0:00:00.031)       0:00:05.282 ******\nok: [controller]\n\nTASK [Get all nodes] ***********************************************************\nThursday 22 January 2026  21:52:02 +0000 (0:00:00.984)       0:00:06.267 ******\nchanged: [controller]\n\nTASK [Print bgp neighbors received-routes] *************************************\nThursday 22 January 2026  21:52:03 +0000 (0:00:00.337)       0:00:06.604 ******\nok: [controller] => {\n    \"msg\": [\n        \"BGP table version is 0, local router ID is 199.19.213.225, vrf id 0\",\n        \"Default local pref 100, local AS 65000\",\n        \"Status codes:  s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,\",\n        \"               i internal, r RIB-failure, S Stale, R Removed\",\n        \"Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self\",\n        \"Origin codes:  i - IGP, e - EGP, ? - incomplete\",\n        \"RPKI validation codes: V valid, I invalid, N Not found\",\n        \"\",\n        \"     Network          Next Hop            Metric LocPrf Weight Path\",\n        \" *> 172.17.0.100/32  172.17.0.100                  100      0 i\",\n        \"\",\n        \"Total number of prefixes 1\"\n    ]\n}\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=10   changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nThursday 22 January 2026  21:52:03 +0000 (0:00:00.038)       0:00:06.642 ******\n===============================================================================\nGather service facts ---------------------------------------------------- 3.39s\nGathering Facts --------------------------------------------------------- 1.27s\nGathering Facts --------------------------------------------------------- 0.98s\nGet all nodes ----------------------------------------------------------- 0.47s\nGet all nodes ----------------------------------------------------------- 0.34s\nMake sure kubelet service is running ------------------------------------ 0.04s\nPrint bgp neighbors received-routes ------------------------------------- 0.04s\nPrint node list --------------------------------------------------------- 0.04s\nMake sure kubelet service is enabled ------------------------------------ 0.03s\nAssert no nody is not ready --------------------------------------------- 0.03s\nINFO     [bgp > verify] Executed: Successful\nINFO     [bgp > cleanup] Executing\nWARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > destroy] Executing\nWARNING  [bgp > destroy] Skipping, '--destroy=never' requested.\nINFO     [bgp > destroy] Executed: Successful\nWARNING  Molecule executed 1 scenario (1 missing files)",
                            "stdout_lines": [
                                "Using CPython 3.13.5 interpreter at: /usr/bin/python3",
                                "Creating virtual environment at: .venv",
                                "Downloading pygments (1.2MiB)",
                                "Downloading cryptography (4.3MiB)",
                                "Downloading ansible-core (2.3MiB)",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading ansible-core",
                                "Installed 36 packages in 52ms",
                                "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     [bgp > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [bgp > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [bgp > dependency] Executing",
                                "WARNING  [bgp > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [bgp > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [bgp > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [bgp > cleanup] Executing",
                                "WARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > destroy] Executing",
                                "WARNING  [bgp > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [bgp > destroy] Executed: Successful",
                                "INFO     [bgp > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml",
                                "INFO     [bgp > syntax] Executed: Successful",
                                "INFO     [bgp > create] Executing",
                                "WARNING  [bgp > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:47:10 +0000 (0:00:00.034)       0:00:00.034 ******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Thursday 22 January 2026  21:47:11 +0000 (0:00:01.287)       0:00:01.322 ******",
                                "ok: [controller]",
                                "",
                                "PLAY [Prepare BGP] *************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:47:17 +0000 (0:00:05.688)       0:00:07.010 ******",
                                "ok: [controller]",
                                "",
                                "TASK [Enable IP forwarding] ****************************************************",
                                "Thursday 22 January 2026  21:47:18 +0000 (0:00:00.751)       0:00:07.761 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Add FRR repository] ******************************************************",
                                "Thursday 22 January 2026  21:47:18 +0000 (0:00:00.447)       0:00:08.209 ******",
                                "[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 [Install frr packages] ****************************************************",
                                "Thursday 22 January 2026  21:47:22 +0000 (0:00:04.221)       0:00:12.431 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Ensure bgpd is enabled] **************************************************",
                                "Thursday 22 January 2026  21:47:43 +0000 (0:00:20.859)       0:00:33.291 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Update FRR configuration] ************************************************",
                                "Thursday 22 January 2026  21:47:44 +0000 (0:00:00.385)       0:00:33.676 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Restart service frr] *****************************************************",
                                "Thursday 22 January 2026  21:47:45 +0000 (0:00:00.889)       0:00:34.566 ******",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=9    changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 22 January 2026  21:47:51 +0000 (0:00:06.118)       0:00:40.685 ******",
                                "===============================================================================",
                                "Install frr packages --------------------------------------------------- 20.86s",
                                "Restart service frr ----------------------------------------------------- 6.12s",
                                "Install Debian packages ------------------------------------------------- 5.69s",
                                "Add FRR repository ------------------------------------------------------ 4.22s",
                                "Gathering Facts --------------------------------------------------------- 1.29s",
                                "Update FRR configuration ------------------------------------------------ 0.89s",
                                "Gathering Facts --------------------------------------------------------- 0.75s",
                                "Enable IP forwarding ---------------------------------------------------- 0.45s",
                                "Ensure bgpd is enabled -------------------------------------------------- 0.39s",
                                "INFO     [bgp > prepare] Executed: Successful",
                                "INFO     [bgp > converge] Executing",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:47:52 +0000 (0:00:00.016)       0:00:00.016 ******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Thursday 22 January 2026  21:47:53 +0000 (0:00:01.034)       0:00:01.051 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Thursday 22 January 2026  21:47:53 +0000 (0:00:00.419)       0:00:01.470 ******",
                                "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] ****",
                                "Thursday 22 January 2026  21:47:55 +0000 (0:00:01.410)       0:00:02.881 ******",
                                "[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] *********",
                                "Thursday 22 January 2026  21:47:56 +0000 (0:00:00.952)       0:00:03.834 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Thursday 22 January 2026  21:47:56 +0000 (0:00:00.417)       0:00:04.252 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Thursday 22 January 2026  21:47:57 +0000 (0:00:00.299)       0:00:04.552 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Thursday 22 January 2026  21:47:57 +0000 (0:00:00.024)       0:00:04.576 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Thursday 22 January 2026  21:47:57 +0000 (0:00:00.032)       0:00:04.608 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Thursday 22 January 2026  21:47:57 +0000 (0:00:00.876)       0:00:05.485 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Thursday 22 January 2026  21:47:58 +0000 (0:00:00.280)       0:00:05.765 ******",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:47:58 +0000 (0:00:00.048)       0:00:05.814 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:47:59 +0000 (0:00:00.774)       0:00:06.588 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:47:59 +0000 (0:00:00.297)       0:00:06.885 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Thursday 22 January 2026  21:47:59 +0000 (0:00:00.037)       0:00:06.923 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:47:59 +0000 (0:00:00.301)       0:00:07.224 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:47:59 +0000 (0:00:00.088)       0:00:07.313 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:01 +0000 (0:00:01.307)       0:00:08.621 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:01 +0000 (0:00:00.041)       0:00:08.662 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:48:01 +0000 (0:00:00.295)       0:00:08.958 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:02 +0000 (0:00:00.953)       0:00:09.911 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:48:02 +0000 (0:00:00.067)       0:00:09.979 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:03 +0000 (0:00:01.187)       0:00:11.167 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 22 January 2026  21:48:06 +0000 (0:00:03.071)       0:00:14.238 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 22 January 2026  21:48:06 +0000 (0:00:00.031)       0:00:14.270 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 22 January 2026  21:48:06 +0000 (0:00:00.027)       0:00:14.298 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 22 January 2026  21:48:06 +0000 (0:00:00.024)       0:00:14.323 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 22 January 2026  21:48:12 +0000 (0:00:05.971)       0:00:20.295 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 22 January 2026  21:48:13 +0000 (0:00:00.622)       0:00:20.918 ******",
                                "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] **********",
                                "Thursday 22 January 2026  21:48:14 +0000 (0:00:01.337)       0:00:22.255 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 22 January 2026  21:48:15 +0000 (0:00:00.757)       0:00:23.013 ******",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Thursday 22 January 2026  21:48:15 +0000 (0:00:00.006)       0:00:23.020 ******",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Thursday 22 January 2026  21:48:16 +0000 (0:00:00.862)       0:00:23.882 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 22 January 2026  21:48:18 +0000 (0:00:01.688)       0:00:25.570 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Thursday 22 January 2026  21:48:18 +0000 (0:00:00.735)       0:00:26.305 ******",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000154409's Python /usr/bin/python3.13. 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 np0000154409's Python /usr/bin/python3.13. 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] ***",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.690)       0:00:26.996 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.029)       0:00:27.025 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.030)       0:00:27.056 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.034)       0:00:27.091 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.034)       0:00:27.126 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.042)       0:00:27.168 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.287)       0:00:27.455 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:48:19 +0000 (0:00:00.038)       0:00:27.494 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:21 +0000 (0:00:01.292)       0:00:28.787 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:21 +0000 (0:00:00.041)       0:00:28.828 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:21 +0000 (0:00:00.280)       0:00:29.109 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:48:21 +0000 (0:00:00.044)       0:00:29.153 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:22 +0000 (0:00:01.156)       0:00:30.309 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 22 January 2026  21:48:22 +0000 (0:00:00.045)       0:00:30.355 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 22 January 2026  21:48:22 +0000 (0:00:00.031)       0:00:30.386 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 22 January 2026  21:48:22 +0000 (0:00:00.032)       0:00:30.418 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 22 January 2026  21:48:22 +0000 (0:00:00.028)       0:00:30.446 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 22 January 2026  21:48:23 +0000 (0:00:00.813)       0:00:31.260 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 22 January 2026  21:48:24 +0000 (0:00:00.555)       0:00:31.815 ******",
                                "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] **********",
                                "Thursday 22 January 2026  21:48:25 +0000 (0:00:01.282)       0:00:33.098 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 22 January 2026  21:48:26 +0000 (0:00:00.675)       0:00:33.774 ******",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 22 January 2026  21:48:26 +0000 (0:00:00.005)       0:00:33.780 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:26 +0000 (0:00:00.461)       0:00:34.241 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:26 +0000 (0:00:00.282)       0:00:34.524 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:48:27 +0000 (0:00:00.061)       0:00:34.586 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:28 +0000 (0:00:01.592)       0:00:36.178 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:30 +0000 (0:00:01.614)       0:00:37.793 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:48:30 +0000 (0:00:00.055)       0:00:37.848 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:32 +0000 (0:00:02.439)       0:00:40.287 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Thursday 22 January 2026  21:48:34 +0000 (0:00:01.723)       0:00:42.011 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Thursday 22 January 2026  21:48:35 +0000 (0:00:00.716)       0:00:42.727 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:35 +0000 (0:00:00.340)       0:00:43.067 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:35 +0000 (0:00:00.292)       0:00:43.360 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:48:35 +0000 (0:00:00.065)       0:00:43.426 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:36 +0000 (0:00:01.028)       0:00:44.454 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Thursday 22 January 2026  21:48:39 +0000 (0:00:02.915)       0:00:47.370 ******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Thursday 22 January 2026  21:48:39 +0000 (0:00:00.048)       0:00:47.418 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Thursday 22 January 2026  21:48:42 +0000 (0:00:02.484)       0:00:49.903 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Thursday 22 January 2026  21:48:42 +0000 (0:00:00.415)       0:00:50.318 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Thursday 22 January 2026  21:48:43 +0000 (0:00:00.632)       0:00:50.950 ******",
                                "changed: [controller] => (item=br_netfilter)",
                                "ok: [controller] => (item=ip_tables)",
                                "changed: [controller] => (item=ip6_tables)",
                                "changed: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:48:44 +0000 (0:00:01.406)       0:00:52.357 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:48:45 +0000 (0:00:00.287)       0:00:52.644 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:48:45 +0000 (0:00:00.042)       0:00:52.687 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:48:46 +0000 (0:00:01.063)       0:00:53.750 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Thursday 22 January 2026  21:48:46 +0000 (0:00:00.030)       0:00:53.781 ******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Thursday 22 January 2026  21:48:46 +0000 (0:00:00.047)       0:00:53.829 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Thursday 22 January 2026  21:48:46 +0000 (0:00:00.028)       0:00:53.857 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Thursday 22 January 2026  21:48:48 +0000 (0:00:02.582)       0:00:56.440 ******",
                                "ok: [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] ***",
                                "Thursday 22 January 2026  21:48:50 +0000 (0:00:02.036)       0:00:58.477 ******",
                                "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] ********",
                                "Thursday 22 January 2026  21:48:51 +0000 (0:00:00.806)       0:00:59.283 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Thursday 22 January 2026  21:48:52 +0000 (0:00:00.638)       0:00:59.922 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Thursday 22 January 2026  21:48:52 +0000 (0:00:00.593)       0:01:00.516 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Thursday 22 January 2026  21:48:53 +0000 (0:00:00.375)       0:01:00.891 ******",
                                "[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] ***********",
                                "Thursday 22 January 2026  21:48:53 +0000 (0:00:00.035)       0:01:00.927 ******",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Thursday 22 January 2026  21:48:54 +0000 (0:00:00.744)       0:01:01.672 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Thursday 22 January 2026  21:48:54 +0000 (0:00:00.634)       0:01:02.307 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Thursday 22 January 2026  21:48:55 +0000 (0:00:00.697)       0:01:03.004 ******",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Thursday 22 January 2026  21:48:55 +0000 (0:00:00.007)       0:01:03.012 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Thursday 22 January 2026  21:48:57 +0000 (0:00:01.649)       0:01:04.661 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Thursday 22 January 2026  21:48:57 +0000 (0:00:00.749)       0:01:05.411 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Thursday 22 January 2026  21:48:58 +0000 (0:00:00.882)       0:01:06.294 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Thursday 22 January 2026  21:48:59 +0000 (0:00:00.926)       0:01:07.220 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Thursday 22 January 2026  21:49:00 +0000 (0:00:00.432)       0:01:07.653 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Thursday 22 January 2026  21:49:00 +0000 (0:00:00.504)       0:01:08.158 ******",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Thursday 22 January 2026  21:49:00 +0000 (0:00:00.084)       0:01:08.242 ******",
                                "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] ***",
                                "Thursday 22 January 2026  21:49:00 +0000 (0:00:00.085)       0:01:08.328 ******",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.322)       0:01:08.650 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.051)       0:01:08.702 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.057)       0:01:08.759 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.049)       0:01:08.809 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.678)       0:01:09.487 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Thursday 22 January 2026  21:49:01 +0000 (0:00:00.035)       0:01:09.522 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.030)       0:01:09.553 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.036)       0:01:09.590 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.039)       0:01:09.629 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.665 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.700 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Thursday 22 January 2026  21:49:02 +0000 (0:00:00.035)       0:01:09.736 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Thursday 22 January 2026  21:50:08 +0000 (0:01:05.795)       0:02:15.532 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Thursday 22 January 2026  21:50:08 +0000 (0:00:00.352)       0:02:15.885 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Thursday 22 January 2026  21:50:08 +0000 (0:00:00.036)       0:02:15.922 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Thursday 22 January 2026  21:50:08 +0000 (0:00:00.329)       0:02:16.251 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Thursday 22 January 2026  21:50:09 +0000 (0:00:00.332)       0:02:16.584 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Thursday 22 January 2026  21:50:09 +0000 (0:00:00.325)       0:02:16.910 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Thursday 22 January 2026  21:50:09 +0000 (0:00:00.049)       0:02:16.959 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Thursday 22 January 2026  21:50:09 +0000 (0:00:00.050)       0:02:17.009 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Thursday 22 January 2026  21:50:09 +0000 (0:00:00.046)       0:02:17.056 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Thursday 22 January 2026  21:50:20 +0000 (0:00:10.488)       0:02:27.544 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:01.104)       0:02:28.648 ******",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.041)       0:02:28.690 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.044)       0:02:28.734 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.037)       0:02:28.772 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.036)       0:02:28.809 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.037)       0:02:28.847 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Thursday 22 January 2026  21:50:21 +0000 (0:00:00.546)       0:02:29.393 ******",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:50:23 +0000 (0:00:01.748)       0:02:31.141 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:50:24 +0000 (0:00:00.912)       0:02:32.054 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:50:24 +0000 (0:00:00.340)       0:02:32.395 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Thursday 22 January 2026  21:50:25 +0000 (0:00:01.035)       0:02:33.430 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:50:26 +0000 (0:00:00.342)       0:02:33.772 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:50:26 +0000 (0:00:00.047)       0:02:33.820 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:50:27 +0000 (0:00:01.005)       0:02:34.825 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Thursday 22 January 2026  21:50:29 +0000 (0:00:01.857)       0:02:36.683 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Thursday 22 January 2026  21:50:29 +0000 (0:00:00.405)       0:02:37.088 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Thursday 22 January 2026  21:50:29 +0000 (0:00:00.320)       0:02:37.409 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Thursday 22 January 2026  21:50:30 +0000 (0:00:00.377)       0:02:37.786 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Thursday 22 January 2026  21:50:30 +0000 (0:00:00.320)       0:02:38.106 ******",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Thursday 22 January 2026  21:50:30 +0000 (0:00:00.340)       0:02:38.447 ******",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:50:30 +0000 (0:00:00.073)       0:02:38.520 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:50:31 +0000 (0:00:00.045)       0:02:38.566 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:50:31 +0000 (0:00:00.836)       0:02:39.403 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Thursday 22 January 2026  21:50:34 +0000 (0:00:02.261)       0:02:41.665 ******",
                                "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] ***************",
                                "Thursday 22 January 2026  21:50:34 +0000 (0:00:00.068)       0:02:41.733 ******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Thursday 22 January 2026  21:50:35 +0000 (0:00:00.818)       0:02:42.551 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Thursday 22 January 2026  21:50:36 +0000 (0:00:01.012)       0:02:43.563 ******",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=112  changed=52   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 22 January 2026  21:50:38 +0000 (0:00:02.591)       0:02:46.155 ******",
                                "===============================================================================",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 65.80s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems -- 10.49s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 5.97s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.34s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.07s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.92s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.59s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 2.58s",
                                "vexxhost.containers.cni_plugins : Install additional packages ----------- 2.48s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 2.44s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.26s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.04s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.86s",
                                "vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.75s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.72s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.61s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 1.59s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.41s",
                                "vexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.41s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.34s",
                                "INFO     [bgp > converge] Executed: Successful",
                                "INFO     [bgp > idempotence] Executing",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:50:40 +0000 (0:00:00.019)       0:00:00.019 ******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Thursday 22 January 2026  21:50:41 +0000 (0:00:01.306)       0:00:01.326 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Thursday 22 January 2026  21:50:42 +0000 (0:00:00.478)       0:00:01.804 ******",
                                "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] ****",
                                "Thursday 22 January 2026  21:50:43 +0000 (0:00:01.590)       0:00:03.395 ******",
                                "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] *********",
                                "Thursday 22 January 2026  21:50:44 +0000 (0:00:01.165)       0:00:04.560 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Thursday 22 January 2026  21:50:45 +0000 (0:00:00.477)       0:00:05.038 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Thursday 22 January 2026  21:50:45 +0000 (0:00:00.371)       0:00:05.409 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Thursday 22 January 2026  21:50:45 +0000 (0:00:00.039)       0:00:05.448 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Thursday 22 January 2026  21:50:45 +0000 (0:00:00.043)       0:00:05.491 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Thursday 22 January 2026  21:50:46 +0000 (0:00:00.860)       0:00:06.352 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Thursday 22 January 2026  21:50:47 +0000 (0:00:00.371)       0:00:06.724 ******",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:50:47 +0000 (0:00:00.058)       0:00:06.782 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:50:48 +0000 (0:00:00.952)       0:00:07.735 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:50:48 +0000 (0:00:00.358)       0:00:08.093 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Thursday 22 January 2026  21:50:48 +0000 (0:00:00.029)       0:00:08.123 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:50:48 +0000 (0:00:00.325)       0:00:08.448 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:50:48 +0000 (0:00:00.072)       0:00:08.520 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:50:49 +0000 (0:00:00.832)       0:00:09.353 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:50:49 +0000 (0:00:00.044)       0:00:09.398 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:50:50 +0000 (0:00:00.317)       0:00:09.715 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:50:51 +0000 (0:00:01.185)       0:00:10.901 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:50:51 +0000 (0:00:00.092)       0:00:10.993 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:50:51 +0000 (0:00:00.530)       0:00:11.524 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 22 January 2026  21:50:54 +0000 (0:00:02.871)       0:00:14.396 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 22 January 2026  21:50:54 +0000 (0:00:00.032)       0:00:14.428 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 22 January 2026  21:50:54 +0000 (0:00:00.028)       0:00:14.457 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 22 January 2026  21:50:54 +0000 (0:00:00.036)       0:00:14.493 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 22 January 2026  21:50:56 +0000 (0:00:01.136)       0:00:15.630 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 22 January 2026  21:50:56 +0000 (0:00:00.757)       0:00:16.387 ******",
                                "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] **********",
                                "Thursday 22 January 2026  21:50:58 +0000 (0:00:01.610)       0:00:17.997 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 22 January 2026  21:50:59 +0000 (0:00:00.760)       0:00:18.758 ******",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 22 January 2026  21:50:59 +0000 (0:00:00.006)       0:00:18.765 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Thursday 22 January 2026  21:51:00 +0000 (0:00:01.062)       0:00:19.827 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:01.310)       0:00:21.137 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:00.067)       0:00:21.205 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:00.050)       0:00:21.255 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:00.057)       0:00:21.312 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:00.049)       0:00:21.362 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:51:01 +0000 (0:00:00.062)       0:00:21.425 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:02 +0000 (0:00:00.414)       0:00:21.839 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:51:02 +0000 (0:00:00.061)       0:00:21.901 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:02 +0000 (0:00:00.509)       0:00:22.410 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:51:02 +0000 (0:00:00.043)       0:00:22.454 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:03 +0000 (0:00:00.517)       0:00:22.971 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:51:03 +0000 (0:00:00.090)       0:00:23.061 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:04 +0000 (0:00:00.593)       0:00:23.655 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 22 January 2026  21:51:04 +0000 (0:00:00.049)       0:00:23.704 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 22 January 2026  21:51:04 +0000 (0:00:00.027)       0:00:23.732 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 22 January 2026  21:51:04 +0000 (0:00:00.030)       0:00:23.762 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 22 January 2026  21:51:04 +0000 (0:00:00.033)       0:00:23.796 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 22 January 2026  21:51:05 +0000 (0:00:01.178)       0:00:24.975 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 22 January 2026  21:51:06 +0000 (0:00:00.796)       0:00:25.771 ******",
                                "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] **********",
                                "Thursday 22 January 2026  21:51:07 +0000 (0:00:01.659)       0:00:27.431 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 22 January 2026  21:51:08 +0000 (0:00:00.839)       0:00:28.270 ******",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 22 January 2026  21:51:08 +0000 (0:00:00.007)       0:00:28.278 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:51:09 +0000 (0:00:00.533)       0:00:28.811 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:09 +0000 (0:00:00.371)       0:00:29.183 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:51:09 +0000 (0:00:00.084)       0:00:29.267 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:10 +0000 (0:00:00.552)       0:00:29.820 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:11 +0000 (0:00:01.475)       0:00:31.296 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:51:11 +0000 (0:00:00.090)       0:00:31.387 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:12 +0000 (0:00:00.521)       0:00:31.908 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Thursday 22 January 2026  21:51:13 +0000 (0:00:01.386)       0:00:33.294 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Thursday 22 January 2026  21:51:14 +0000 (0:00:00.717)       0:00:34.011 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:51:14 +0000 (0:00:00.306)       0:00:34.317 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:15 +0000 (0:00:00.338)       0:00:34.656 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:51:15 +0000 (0:00:00.069)       0:00:34.726 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:15 +0000 (0:00:00.491)       0:00:35.217 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Thursday 22 January 2026  21:51:17 +0000 (0:00:02.246)       0:00:37.464 ******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Thursday 22 January 2026  21:51:17 +0000 (0:00:00.059)       0:00:37.523 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Thursday 22 January 2026  21:51:18 +0000 (0:00:00.996)       0:00:38.519 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Thursday 22 January 2026  21:51:19 +0000 (0:00:00.497)       0:00:39.017 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Thursday 22 January 2026  21:51:20 +0000 (0:00:00.642)       0:00:39.660 ******",
                                "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] *********************",
                                "Thursday 22 January 2026  21:51:21 +0000 (0:00:01.278)       0:00:40.938 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:21 +0000 (0:00:00.325)       0:00:41.264 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://cdn.dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:51:21 +0000 (0:00:00.044)       0:00:41.309 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:22 +0000 (0:00:00.466)       0:00:41.775 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Thursday 22 January 2026  21:51:22 +0000 (0:00:00.042)       0:00:41.817 ******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Thursday 22 January 2026  21:51:22 +0000 (0:00:00.061)       0:00:41.878 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Thursday 22 January 2026  21:51:22 +0000 (0:00:00.037)       0:00:41.915 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Thursday 22 January 2026  21:51:23 +0000 (0:00:00.965)       0:00:42.881 ******",
                                "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] ***",
                                "Thursday 22 January 2026  21:51:25 +0000 (0:00:02.259)       0:00:45.141 ******",
                                "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] ********",
                                "Thursday 22 January 2026  21:51:26 +0000 (0:00:00.855)       0:00:45.997 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Thursday 22 January 2026  21:51:27 +0000 (0:00:00.657)       0:00:46.655 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Thursday 22 January 2026  21:51:27 +0000 (0:00:00.630)       0:00:47.286 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Thursday 22 January 2026  21:51:28 +0000 (0:00:00.416)       0:00:47.702 ******",
                                "[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] ***********",
                                "Thursday 22 January 2026  21:51:28 +0000 (0:00:00.035)       0:00:47.738 ******",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Thursday 22 January 2026  21:51:28 +0000 (0:00:00.811)       0:00:48.550 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Thursday 22 January 2026  21:51:29 +0000 (0:00:00.662)       0:00:49.213 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Thursday 22 January 2026  21:51:30 +0000 (0:00:00.514)       0:00:49.727 ******",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Thursday 22 January 2026  21:51:30 +0000 (0:00:00.005)       0:00:49.733 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Thursday 22 January 2026  21:51:30 +0000 (0:00:00.486)       0:00:50.220 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Thursday 22 January 2026  21:51:31 +0000 (0:00:00.999)       0:00:51.219 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Thursday 22 January 2026  21:51:32 +0000 (0:00:01.051)       0:00:52.271 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Thursday 22 January 2026  21:51:33 +0000 (0:00:00.456)       0:00:52.727 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Thursday 22 January 2026  21:51:33 +0000 (0:00:00.539)       0:00:53.267 ******",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Thursday 22 January 2026  21:51:33 +0000 (0:00:00.092)       0:00:53.360 ******",
                                "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] ***",
                                "Thursday 22 January 2026  21:51:33 +0000 (0:00:00.094)       0:00:53.454 ******",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Thursday 22 January 2026  21:51:34 +0000 (0:00:00.354)       0:00:53.809 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Thursday 22 January 2026  21:51:34 +0000 (0:00:00.061)       0:00:53.870 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Thursday 22 January 2026  21:51:34 +0000 (0:00:00.045)       0:00:53.916 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Thursday 22 January 2026  21:51:34 +0000 (0:00:00.047)       0:00:53.964 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.707)       0:00:54.671 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.030)       0:00:54.702 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.035)       0:00:54.738 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.039)       0:00:54.777 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.031)       0:00:54.808 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.029)       0:00:54.838 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.045)       0:00:54.883 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.035)       0:00:54.919 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.318)       0:00:55.238 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Thursday 22 January 2026  21:51:35 +0000 (0:00:00.328)       0:00:55.566 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Thursday 22 January 2026  21:51:36 +0000 (0:00:00.038)       0:00:55.605 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Thursday 22 January 2026  21:51:36 +0000 (0:00:00.380)       0:00:55.985 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Thursday 22 January 2026  21:51:36 +0000 (0:00:00.337)       0:00:56.323 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Thursday 22 January 2026  21:51:37 +0000 (0:00:00.329)       0:00:56.653 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Thursday 22 January 2026  21:51:37 +0000 (0:00:00.047)       0:00:56.700 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Thursday 22 January 2026  21:51:37 +0000 (0:00:00.046)       0:00:56.746 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Thursday 22 January 2026  21:51:37 +0000 (0:00:00.042)       0:00:56.789 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Thursday 22 January 2026  21:51:38 +0000 (0:00:01.092)       0:00:57.882 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:01.039)       0:00:58.921 ******",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:00.059)       0:00:58.981 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:00.046)       0:00:59.027 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:00.040)       0:00:59.068 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:00.034)       0:00:59.102 ******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Thursday 22 January 2026  21:51:39 +0000 (0:00:00.042)       0:00:59.145 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Thursday 22 January 2026  21:51:40 +0000 (0:00:00.639)       0:00:59.784 ******",
                                "ok: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:51:41 +0000 (0:00:01.423)       0:01:01.207 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 22 January 2026  21:51:43 +0000 (0:00:01.981)       0:01:03.189 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 22 January 2026  21:51:43 +0000 (0:00:00.309)       0:01:03.499 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Thursday 22 January 2026  21:51:44 +0000 (0:00:00.950)       0:01:04.449 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:45 +0000 (0:00:00.328)       0:01:04.777 ******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 22 January 2026  21:51:45 +0000 (0:00:00.046)       0:01:04.824 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:45 +0000 (0:00:00.443)       0:01:05.267 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Thursday 22 January 2026  21:51:47 +0000 (0:00:01.593)       0:01:06.861 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Thursday 22 January 2026  21:51:47 +0000 (0:00:00.421)       0:01:07.283 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Thursday 22 January 2026  21:51:48 +0000 (0:00:00.330)       0:01:07.614 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Thursday 22 January 2026  21:51:48 +0000 (0:00:00.366)       0:01:07.981 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Thursday 22 January 2026  21:51:48 +0000 (0:00:00.332)       0:01:08.314 ******",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Thursday 22 January 2026  21:51:49 +0000 (0:00:00.301)       0:01:08.616 ******",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 22 January 2026  21:51:49 +0000 (0:00:00.061)       0:01:08.677 ******",
                                "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] *******************",
                                "Thursday 22 January 2026  21:51:49 +0000 (0:00:00.053)       0:01:08.731 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 22 January 2026  21:51:49 +0000 (0:00:00.470)       0:01:09.202 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Thursday 22 January 2026  21:51:51 +0000 (0:00:01.798)       0:01:11.000 ******",
                                "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] ***************",
                                "Thursday 22 January 2026  21:51:51 +0000 (0:00:00.050)       0:01:11.051 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Thursday 22 January 2026  21:51:52 +0000 (0:00:00.787)       0:01:11.839 ******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Thursday 22 January 2026  21:51:53 +0000 (0:00:01.067)       0:01:12.907 ******",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=113  changed=0    unreachable=0    failed=0    skipped=30   rescued=0    ignored=1",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 22 January 2026  21:51:55 +0000 (0:00:02.402)       0:01:15.309 ******",
                                "===============================================================================",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.87s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.40s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.26s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.25s",
                                "Gathering Facts --------------------------------------------------------- 1.98s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.80s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.66s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.61s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.59s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.59s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.48s",
                                "vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components --- 1.42s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.39s",
                                "vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap --- 1.31s",
                                "Gathering Facts --------------------------------------------------------- 1.31s",
                                "vexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.28s",
                                "vexxhost.containers.package : Update state for tar ---------------------- 1.19s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 1.18s",
                                "vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443 ---- 1.17s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 1.14s",
                                "INFO     [bgp > idempotence] Executed: Successful",
                                "INFO     [bgp > side_effect] Executing",
                                "WARNING  [bgp > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > verify] Executing",
                                "",
                                "PLAY [Verify] ******************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:51:56 +0000 (0:00:00.009)       0:00:00.009 ******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Gather service facts] ****************************************************",
                                "Thursday 22 January 2026  21:51:58 +0000 (0:00:01.265)       0:00:01.274 ******",
                                "ok: [controller]",
                                "",
                                "TASK [Make sure kubelet service is running] ************************************",
                                "Thursday 22 January 2026  21:52:01 +0000 (0:00:03.392)       0:00:04.667 ******",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Make sure kubelet service is enabled] ************************************",
                                "Thursday 22 January 2026  21:52:01 +0000 (0:00:00.039)       0:00:04.706 ******",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Get all nodes] ***********************************************************",
                                "Thursday 22 January 2026  21:52:01 +0000 (0:00:00.033)       0:00:04.739 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Print node list] *********************************************************",
                                "Thursday 22 January 2026  21:52:01 +0000 (0:00:00.474)       0:00:05.214 ******",
                                "ok: [controller] => {",
                                "    \"msg\": [",
                                "        \"NAME         STATUS   ROLES           AGE    VERSION\",",
                                "        \"controller   Ready    control-plane   118s   v1.34.0\"",
                                "    ]",
                                "}",
                                "",
                                "TASK [Assert no nody is not ready] *********************************************",
                                "Thursday 22 January 2026  21:52:01 +0000 (0:00:00.035)       0:00:05.250 ******",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "PLAY [verify BGP] **************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 22 January 2026  21:52:02 +0000 (0:00:00.031)       0:00:05.282 ******",
                                "ok: [controller]",
                                "",
                                "TASK [Get all nodes] ***********************************************************",
                                "Thursday 22 January 2026  21:52:02 +0000 (0:00:00.984)       0:00:06.267 ******",
                                "changed: [controller]",
                                "",
                                "TASK [Print bgp neighbors received-routes] *************************************",
                                "Thursday 22 January 2026  21:52:03 +0000 (0:00:00.337)       0:00:06.604 ******",
                                "ok: [controller] => {",
                                "    \"msg\": [",
                                "        \"BGP table version is 0, local router ID is 199.19.213.225, vrf id 0\",",
                                "        \"Default local pref 100, local AS 65000\",",
                                "        \"Status codes:  s suppressed, d damped, h history, u unsorted, * valid, > best, = multipath,\",",
                                "        \"               i internal, r RIB-failure, S Stale, R Removed\",",
                                "        \"Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self\",",
                                "        \"Origin codes:  i - IGP, e - EGP, ? - incomplete\",",
                                "        \"RPKI validation codes: V valid, I invalid, N Not found\",",
                                "        \"\",",
                                "        \"     Network          Next Hop            Metric LocPrf Weight Path\",",
                                "        \" *> 172.17.0.100/32  172.17.0.100                  100      0 i\",",
                                "        \"\",",
                                "        \"Total number of prefixes 1\"",
                                "    ]",
                                "}",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=10   changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 22 January 2026  21:52:03 +0000 (0:00:00.038)       0:00:06.642 ******",
                                "===============================================================================",
                                "Gather service facts ---------------------------------------------------- 3.39s",
                                "Gathering Facts --------------------------------------------------------- 1.27s",
                                "Gathering Facts --------------------------------------------------------- 0.98s",
                                "Get all nodes ----------------------------------------------------------- 0.47s",
                                "Get all nodes ----------------------------------------------------------- 0.34s",
                                "Make sure kubelet service is running ------------------------------------ 0.04s",
                                "Print bgp neighbors received-routes ------------------------------------- 0.04s",
                                "Print node list --------------------------------------------------------- 0.04s",
                                "Make sure kubelet service is enabled ------------------------------------ 0.03s",
                                "Assert no nody is not ready --------------------------------------------- 0.03s",
                                "INFO     [bgp > verify] Executed: Successful",
                                "INFO     [bgp > cleanup] Executing",
                                "WARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > destroy] Executing",
                                "WARNING  [bgp > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [bgp > destroy] Executed: Successful",
                                "WARNING  Molecule executed 1 scenario (1 missing files)"
                            ],
                            "zuul_log_id": "0242ac17-0010-2253-ba6a-000000000006-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:03.658651Z",
                            "start": "2026-01-22T21:46:42.248943Z"
                        },
                        "id": "0242ac17-0010-2253-ba6a-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": "vexxhost.dev/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-01-22T21:52:07.689035Z",
                    "start": "2026-01-22T21:52:04.402548Z"
                },
                "id": "0242ac17-0010-642d-fc70-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-0010-642d-fc70-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:04.457988Z",
                            "start": "2026-01-22T21:52:04.412598Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-642d-fc70-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:04.500190Z",
                            "start": "2026-01-22T21:52:04.462057Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-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/29a6fd74017641beabd438e4ea4ffbb5/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-642d-fc70-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:05.377915Z",
                            "start": "2026-01-22T21:52:04.503601Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": false,
                                    "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@199.19.213.225:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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@199.19.213.225:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": "",
                                    "rc": 0,
                                    "stdout_lines": [],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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@199.19.213.225:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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@199.19.213.225:/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/29a6fd74017641beabd438e4ea4ffbb5/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@199.19.213.225:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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@199.19.213.225:/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/29a6fd74017641beabd438e4ea4ffbb5/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-642d-fc70-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:07.010275Z",
                            "start": "2026-01-22T21:52:05.387610Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/artifacts/* /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.008453",
                                    "end": "2026-01-22 21:52:07.398969",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/artifacts/* /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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-01-22 21:52:07.390516",
                                    "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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/docs/* /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007420",
                                    "end": "2026-01-22 21:52:07.642569",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/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/29a6fd74017641beabd438e4ea4ffbb5/work/docs/* /var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/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-01-22 21:52:07.635149",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-642d-fc70-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:07.689035Z",
                            "start": "2026-01-22T21:52:07.018810Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-01-22T21:52:08.230727Z",
                    "start": "2026-01-22T21:52:07.698724Z"
                },
                "id": "0242ac17-0010-642d-fc70-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQD3YIg3CknZbLUWUgAgPt8IeceMYtyaWmzklIaHznFLV/y84lhIPuO1akEn8SPX4I/RVkDTJZI3RdjDfNBqqRtldI4LHtzpXvFxBgnoOCbkQ5ifAbUiknIFj6gDBRU1eiVuDW1kpwB3481oG2eQ4rkET1Vmx073K+vn7l/xErPx/p94+bD/Z3AmsZxa6XwQtZAvrjKpEFHQ1JF11TDARlYvL1YqFG3YC25OWmc0CxV0RFaGvqQxAJ9fKX+R4JmILOwZDprq6Vaft1q4yW9a+0rbHnfM1v9gZgCy3ETYL+hGb64WK6JGczv5C9/mEm/ubTEMEhh91ohNRQpRodvXMs58kYdEci2jbwVqb9J9wm8qlvYnU/urSn6mchgjAkOdL2pA6JC/JWxI49c3IrzEz5xrnd1KPW6CTZ0cdcbMSIcn1JJlE2vBZOrDaQo1+D8AI3kK5JM95YbBdufNMqknGW2yklY/vBfS82TcLszPPJhwiGbXcCDolbPsj7u+gFb1HSk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQD3YIg3CknZbLUWUgAgPt8IeceMYtyaWmzklIaHznFLV/y84lhIPuO1akEn8SPX4I/RVkDTJZI3RdjDfNBqqRtldI4LHtzpXvFxBgnoOCbkQ5ifAbUiknIFj6gDBRU1eiVuDW1kpwB3481oG2eQ4rkET1Vmx073K+vn7l/xErPx/p94+bD/Z3AmsZxa6XwQtZAvrjKpEFHQ1JF11TDARlYvL1YqFG3YC25OWmc0CxV0RFaGvqQxAJ9fKX+R4JmILOwZDprq6Vaft1q4yW9a+0rbHnfM1v9gZgCy3ETYL+hGb64WK6JGczv5C9/mEm/ubTEMEhh91ohNRQpRodvXMs58kYdEci2jbwVqb9J9wm8qlvYnU/urSn6mchgjAkOdL2pA6JC/JWxI49c3IrzEz5xrnd1KPW6CTZ0cdcbMSIcn1JJlE2vBZOrDaQo1+D8AI3kK5JM95YbBdufNMqknGW2yklY/vBfS82TcLszPPJhwiGbXcCDolbPsj7u+gFb1HSk= 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-0010-642d-fc70-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/29a6fd74017641beabd438e4ea4ffbb5/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-01-22T21:52:08.230727Z",
                            "start": "2026-01-22T21:52:07.704006Z"
                        },
                        "id": "0242ac17-0010-642d-fc70-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
}
]
