[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-03-09T15:23:21.845233Z",
                    "start": "2026-03-09T15:23:19.130061Z"
                },
                "id": "0242ac17-0011-bad2-38f3-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-03-09",
                                    "day": "09",
                                    "epoch": "1773069800",
                                    "epoch_int": "1773069800",
                                    "hour": "15",
                                    "iso8601": "2026-03-09T15:23:20Z",
                                    "iso8601_basic": "20260309T152320021978",
                                    "iso8601_basic_short": "20260309T152320",
                                    "iso8601_micro": "2026-03-09T15:23:20.021978Z",
                                    "minute": "23",
                                    "month": "03",
                                    "second": "20",
                                    "time": "15:23:20",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Monday",
                                    "weekday_number": "1",
                                    "weeknumber": "10",
                                    "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/6f9349e706114134b4bf50f71bc761d1/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work",
                                    "HOSTNAME": "0a8996d2b663",
                                    "LANG": "C.UTF-8",
                                    "PATH": "/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                                    "PWD": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base",
                                    "PYTHONPATH": "/var/lib/zuul/ansible/9",
                                    "PYTHON_SHA256": "8d3ed8ec5c88c1c95f5e558612a725450d2452813ddad5e58fdb1a53b1209b78",
                                    "PYTHON_VERSION": "3.11.14",
                                    "SSH_AGENT_PID": "3127647",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-6ofSLzlC18fG/agent.3127645",
                                    "TMP": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "0a8996d2b663",
                                "ansible_hostname": "0a8996d2b663",
                                "ansible_hostnqn": "",
                                "ansible_is_chroot": false,
                                "ansible_iscsi_iqn": "",
                                "ansible_kernel": "5.15.0-130-generic",
                                "ansible_kernel_version": "#140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024",
                                "ansible_loadavg": {
                                    "15m": 2.5576171875,
                                    "1m": 9.64990234375,
                                    "5m": 3.810546875
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 4197,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 15494,
                                        "used": 16596
                                    },
                                    "real": {
                                        "free": 4197,
                                        "total": 32090,
                                        "used": 27893
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 8972201,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629379,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750135296,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972199,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629381,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750127104,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972189,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629391,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750086144,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972189,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629391,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750086144,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972183,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629397,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750061568,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972179,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629401,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750045184,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972177,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629403,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750036992,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972173,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629407,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750020608,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972169,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629411,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36750004224,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 223870212,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 40070505,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 63764947,
                                        "inode_total": 67108864,
                                        "inode_used": 3343917,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 916972388352,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8972163,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31629417,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16626823,
                                        "inode_total": 20643840,
                                        "inode_used": 4017017,
                                        "mount": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36749979648,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "0a8996d2b663",
                                "ansible_os_family": "Debian",
                                "ansible_pkg_mgr": "apt",
                                "ansible_proc_cmdline": {
                                    "BOOT_IMAGE": "/boot/vmlinuz-5.15.0-130-generic",
                                    "console": [
                                        "tty1",
                                        "ttyS0"
                                    ],
                                    "ro": true,
                                    "root": "UUID=5a569d86-b935-46dd-ae79-7a72a25b6a4c"
                                },
                                "ansible_processor": [
                                    "0",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "1",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "2",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "3",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "4",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "5",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "6",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "7",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "8",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "9",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "10",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "11",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "12",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "13",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "14",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor",
                                    "15",
                                    "AuthenticAMD",
                                    "AMD EPYC-Rome Processor"
                                ],
                                "ansible_processor_cores": 1,
                                "ansible_processor_count": 16,
                                "ansible_processor_nproc": 16,
                                "ansible_processor_threads_per_core": 1,
                                "ansible_processor_vcpus": 16,
                                "ansible_product_name": "NA",
                                "ansible_product_serial": "NA",
                                "ansible_product_uuid": "NA",
                                "ansible_product_version": "NA",
                                "ansible_python": {
                                    "executable": "/usr/local/lib/zuul/ansible/9/bin/python",
                                    "has_sslcontext": true,
                                    "type": "cpython",
                                    "version": {
                                        "major": 3,
                                        "micro": 14,
                                        "minor": 11,
                                        "releaselevel": "final",
                                        "serial": 0
                                    },
                                    "version_info": [
                                        3,
                                        11,
                                        14,
                                        "final",
                                        0
                                    ]
                                },
                                "ansible_python_version": "3.11.14",
                                "ansible_real_group_id": 0,
                                "ansible_real_user_id": 0,
                                "ansible_selinux": {
                                    "status": "disabled"
                                },
                                "ansible_selinux_python_present": true,
                                "ansible_service_mgr": "bwrap",
                                "ansible_swapfree_mb": 0,
                                "ansible_swaptotal_mb": 0,
                                "ansible_system": "Linux",
                                "ansible_system_capabilities": "N/A",
                                "ansible_system_capabilities_enforced": "N/A",
                                "ansible_system_vendor": "NA",
                                "ansible_uptime_seconds": 36733529,
                                "ansible_user_dir": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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-03-09T15:23:20.093342Z",
                            "start": "2026-03-09T15:23:19.137959Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:20.118909Z",
                            "start": "2026-03-09T15:23:20.097943Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "6f9/oss/6f9349e706114134b4bf50f71bc761d1"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:20.211850Z",
                            "start": "2026-03-09T15:23:20.179949Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.16\nJob: ansible-collection-kubernetes-molecule-cluster-api\nPipeline: check\nExecutor: 0a8996d2b663\nTriggered by: https://github.com/vexxhost/ansible-collection-kubernetes/pull/236\nEvent ID: c2871620-1bcb-11f1-9a65-bf7aaf81b926\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:20.266961Z",
                            "start": "2026-03-09T15:23:20.223670Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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: np0000158216\nUsername: zuul\nDistro: Debian 13.3\nProvider: yul1\nRegion: ca-ymq-1\nLabel: debian-trixie\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.99\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:20.386935Z",
                            "start": "2026-03-09T15:23:20.270151Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:20.855811Z",
                            "start": "2026-03-09T15:23:20.393506Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "bc6b5033c15152bfbc8041a5acb685076c236f61",
                            "dest": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "bc6b5033c15152bfbc8041a5acb685076c236f61",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/.ansible/tmp/ansible-tmp-1773069800.9083831-84-230988878656993/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "fc6026170ba1761f71810ed622296acf",
                            "mode": "0644",
                            "owner": "root",
                            "size": 17611,
                            "src": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/.ansible/tmp/ansible-tmp-1773069800.9083831-84-230988878656993/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:21.845233Z",
                            "start": "2026-03-09T15:23:20.875451Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-03-09T15:23:29.459448Z",
                    "start": "2026-03-09T15:23:21.854233Z"
                },
                "id": "0242ac17-0011-bad2-38f3-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/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:22.211458Z",
                            "start": "2026-03-09T15:23:21.861329Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-000000000018",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:22.258680Z",
                            "start": "2026-03-09T15:23:22.218086Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.824520",
                            "end": "2026-03-09 15:23:23.534996",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa -b 3072",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-bad2-38f3-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-03-09 15:23:22.710476",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa.pub\nThe key fingerprint is:\nSHA256:KxoaP92nOtT91vGzqF1yM9aos0Bm02cWnuxyq207xkI zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|                 |\n|                 |\n|              .  |\n|           . o o |\n|       .S.= . B  |\n|      . .=..E=...|\n|  . .o... .o.++O.|\n|   +.oo.. ..*=%o+|\n|  . o..o.o o=X++o|\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:KxoaP92nOtT91vGzqF1yM9aos0Bm02cWnuxyq207xkI zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|                 |",
                                "|                 |",
                                "|              .  |",
                                "|           . o o |",
                                "|       .S.= . B  |",
                                "|      . .=..E=...|",
                                "|  . .o... .o.++O.|",
                                "|   +.oo.. ..*=%o+|",
                                "|  . o..o.o o=X++o|",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0011-bad2-38f3-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:23.592545Z",
                            "start": "2026-03-09T15:23:22.279539Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:23.632951Z",
                            "start": "2026-03-09T15:23:23.599430Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000009d",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:23.671778Z",
                            "start": "2026-03-09T15:23:23.655445Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyFUWN92S6Dvy6A2Wf8AoZCM95dI7nhTUc3tIR5UXgRW4yakJOpu2i+Tk1AMeNfl/Fb6o+AdWug/Yun6ZTlLuioPUo9qQ8tNcMYy1HOuK9B/ARsYAOU4RMFvb9Ut1lxSc7d2xEcCDgBFGLMHUjHU0J/1r/UQBUCa9gUZuTG3YmdOVPM0xWhLno2MR9stdlfujgwnO5G+QhWQZ2m+WweL/NfaLfscg5e/AqkURfi4izTMNrWiLcEAOTLKFFOUxf947PthBmv/ZIB15b5tOwFzSA5AgenUFh+5cRtjWByadaKsj5s1ZtzvyUkvNIO+VPrZdhIsLGX8O4M3xwfWgJNQJ0aeE+QYQataNdw+oy93ByTzc2neDsY/zUP8Brjmp5XnHUQIXjOtYHKx+lYbrTqhd4kwuhzlFZARoDbT+OLKCmtiEk/Bbz9lQd83UUkGbcGFdsVEfdciZ0WdfGeagUuTY7LmA/ccVw4XCfi87pMkmk0FVvYs/CVYA1gtkrRHmebV8= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyFUWN92S6Dvy6A2Wf8AoZCM95dI7nhTUc3tIR5UXgRW4yakJOpu2i+Tk1AMeNfl/Fb6o+AdWug/Yun6ZTlLuioPUo9qQ8tNcMYy1HOuK9B/ARsYAOU4RMFvb9Ut1lxSc7d2xEcCDgBFGLMHUjHU0J/1r/UQBUCa9gUZuTG3YmdOVPM0xWhLno2MR9stdlfujgwnO5G+QhWQZ2m+WweL/NfaLfscg5e/AqkURfi4izTMNrWiLcEAOTLKFFOUxf947PthBmv/ZIB15b5tOwFzSA5AgenUFh+5cRtjWByadaKsj5s1ZtzvyUkvNIO+VPrZdhIsLGX8O4M3xwfWgJNQJ0aeE+QYQataNdw+oy93ByTzc2neDsY/zUP8Brjmp5XnHUQIXjOtYHKx+lYbrTqhd4kwuhzlFZARoDbT+OLKCmtiEk/Bbz9lQd83UUkGbcGFdsVEfdciZ0WdfGeagUuTY7LmA/ccVw4XCfi87pMkmk0FVvYs/CVYA1gtkrRHmebV8= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "present",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:24.320492Z",
                            "start": "2026-03-09T15:23:23.684848Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:24.541733Z",
                            "start": "2026-03-09T15:23:24.328700Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "9685a1aee242cdd64b9c99d9219d8bf53ad11185",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "6f9349e706114134b4bf50f71bc761d1_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "9685a1aee242cdd64b9c99d9219d8bf53ad11185",
                                    "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-1773069804.5974865-190-247665018552675/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "a89c091b7817b01b9626e38a75c3cad7",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1773069804.5974865-190-247665018552675/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:25.107914Z",
                            "start": "2026-03-09T15:23:24.545735Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "6d0cb42b2b3a8ca09221cd0fccad216f8e26cc12",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "6f9349e706114134b4bf50f71bc761d1_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "6d0cb42b2b3a8ca09221cd0fccad216f8e26cc12",
                                    "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-1773069805.157946-200-67629169848511/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "a0bb9e56d9ca0c0b9c621bbb5fa8f9e4",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1773069805.157946-200-67629169848511/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:25.670941Z",
                            "start": "2026-03-09T15:23:25.113894Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000c0",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:25.700331Z",
                            "start": "2026-03-09T15:23:25.674791Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000009e",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/etc/zuul/id_rsa"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:26.129704Z",
                            "start": "2026-03-09T15:23:25.722862Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa"
                            ],
                            "delta": "0:00:00.016963",
                            "end": "2026-03-09 15:23:26.388989",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-bad2-38f3-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-03-09 15:23:26.372026",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/6f9349e706114134b4bf50f71bc761d1_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0011-bad2-38f3-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:26.440020Z",
                            "start": "2026-03-09T15:23:26.152073Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:26.779879Z",
                            "start": "2026-03-09T15:23:26.447048Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000ac",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:26.814183Z",
                            "start": "2026-03-09T15:23:26.785800Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-0000000000ad",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:27.212249Z",
                            "start": "2026-03-09T15:23:26.828061Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000001d",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result",
                            "changed": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:28.246269Z",
                            "start": "2026-03-09T15:23:27.225759Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-00000000001e",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/logs",
                                    "state": "absent",
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "state": "absent",
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/docs",
                                    "state": "absent",
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-bad2-38f3-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:28.862935Z",
                            "start": "2026-03-09T15:23:28.252857Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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-0011-bad2-38f3-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:29.459448Z",
                            "start": "2026-03-09T15:23:28.868547Z"
                        },
                        "id": "0242ac17-0011-bad2-38f3-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-03-09T15:23:33.151328Z",
                    "start": "2026-03-09T15:23:30.232274Z"
                },
                "id": "0242ac17-0011-c0c5-ef2e-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-1773069810.2982295-5-112223288701189/uv-x86_64-unknown-linux-gnu3hs6fio2.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-1773069810.2982295-5-112223288701189/uv-x86_64-unknown-linux-gnu3hs6fio2.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-c0c5-ef2e-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:32.611668Z",
                            "start": "2026-03-09T15:23:30.243634Z"
                        },
                        "id": "0242ac17-0011-c0c5-ef2e-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.014180",
                            "end": "2026-03-09 15:23:32.814657",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/local/bin/uv --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-c0c5-ef2e-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-03-09 15:23:32.800477",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0011-c0c5-ef2e-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-c0c5-ef2e-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:33.151328Z",
                            "start": "2026-03-09T15:23:32.639474Z"
                        },
                        "id": "0242ac17-0011-c0c5-ef2e-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-03-09T15:30:46.451704Z",
                    "start": "2026-03-09T15:23:33.906445Z"
                },
                "id": "0242ac17-0011-9d47-0315-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "bc6b5033c15152bfbc8041a5acb685076c236f61",
                            "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": "bc6b5033c15152bfbc8041a5acb685076c236f61",
                                    "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-1773069813.9647405-5-48002346096341/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "fc6026170ba1761f71810ed622296acf",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 17611,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1773069813.9647405-5-48002346096341/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:23:34.878917Z",
                            "start": "2026-03-09T15:23:33.916584Z"
                        },
                        "id": "0242ac17-0011-9d47-0315-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-03-09T15:23:35.246326Z",
                            "start": "2026-03-09T15:23:34.884008Z"
                        },
                        "id": "0242ac17-0011-9d47-0315-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "cluster-api"
                            ],
                            "delta": "0:07:10.594966",
                            "end": "2026-03-09 15:30:46.095542",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s cluster-api",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0011-9d47-0315-000000000006-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-03-09 15:23:35.500576",
                            "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 46ms\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     [cluster-api > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [cluster-api > prerun] Performing prerun with role_name_check=0...\nINFO     [cluster-api > dependency] Executing\nWARNING  [cluster-api > dependency] Missing roles requirements file: requirements.yml\nWARNING  [cluster-api > dependency] Missing collections requirements file: collections.yml\nWARNING  [cluster-api > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [cluster-api > cleanup] Executing\nWARNING  [cluster-api > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [cluster-api > destroy] Executing\nWARNING  [cluster-api > destroy] Skipping, '--destroy=never' requested.\nINFO     [cluster-api > destroy] Executed: Successful\nINFO     [cluster-api > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/cluster-api/converge.yml\nINFO     [cluster-api > syntax] Executed: Successful\nINFO     [cluster-api > create] Executing\nWARNING  [cluster-api > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [cluster-api > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:23:58 +0000 (0:00:00.030)       0:00:00.030 **********\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] *************************************************\nMonday 09 March 2026  15:23:59 +0000 (0:00:01.274)       0:00:01.305 **********\nok: [controller]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:24:04 +0000 (0:00:05.063)       0:00:06.368 **********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nMonday 09 March 2026  15:24:05 +0000 (0:00:00.803)       0:00:07.172 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nMonday 09 March 2026  15:24:05 +0000 (0:00:00.430)       0:00:07.602 **********\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] ****\nMonday 09 March 2026  15:24:07 +0000 (0:00:01.389)       0:00:08.992 **********\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] *********\nMonday 09 March 2026  15:24:07 +0000 (0:00:00.920)       0:00:09.912 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nMonday 09 March 2026  15:24:08 +0000 (0:00:00.406)       0:00:10.319 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nMonday 09 March 2026  15:24:08 +0000 (0:00:00.290)       0:00:10.610 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nMonday 09 March 2026  15:24:08 +0000 (0:00:00.041)       0:00:10.652 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nMonday 09 March 2026  15:24:08 +0000 (0:00:00.046)       0:00:10.698 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nMonday 09 March 2026  15:24:09 +0000 (0:00:00.961)       0:00:11.660 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nMonday 09 March 2026  15:24:10 +0000 (0:00:00.303)       0:00:11.963 **********\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:24:10 +0000 (0:00:00.050)       0:00:12.013 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:24:10 +0000 (0:00:00.808)       0:00:12.822 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:24:11 +0000 (0:00:00.366)       0:00:13.189 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 09 March 2026  15:24:11 +0000 (0:00:00.038)       0:00:13.228 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:24:11 +0000 (0:00:00.310)       0:00:13.539 **********\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] *******************\nMonday 09 March 2026  15:24:11 +0000 (0:00:00.093)       0:00:13.633 **********\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:24:12 +0000 (0:00:00.767)       0:00:14.400 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:24:12 +0000 (0:00:00.046)       0:00:14.447 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:24:12 +0000 (0:00:00.310)       0:00:14.758 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:24:13 +0000 (0:00:00.853)       0:00:15.611 **********\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] *******************\nMonday 09 March 2026  15:24:13 +0000 (0:00:00.078)       0:00:15.689 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:24:14 +0000 (0:00:00.987)       0:00:16.677 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 09 March 2026  15:24:17 +0000 (0:00:03.148)       0:00:19.826 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 09 March 2026  15:24:17 +0000 (0:00:00.035)       0:00:19.861 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 09 March 2026  15:24:17 +0000 (0:00:00.036)       0:00:19.897 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 09 March 2026  15:24:17 +0000 (0:00:00.039)       0:00:19.937 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 09 March 2026  15:24:23 +0000 (0:00:05.285)       0:00:25.223 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 09 March 2026  15:24:23 +0000 (0:00:00.698)       0:00:25.921 **********\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] **********\nMonday 09 March 2026  15:24:25 +0000 (0:00:01.418)       0:00:27.340 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 09 March 2026  15:24:26 +0000 (0:00:00.800)       0:00:28.140 **********\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nMonday 09 March 2026  15:24:26 +0000 (0:00:00.006)       0:00:28.147 **********\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nMonday 09 March 2026  15:24:27 +0000 (0:00:00.845)       0:00:28.992 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 09 March 2026  15:24:28 +0000 (0:00:01.725)       0:00:30.717 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nMonday 09 March 2026  15:24:29 +0000 (0:00:00.766)       0:00:31.483 **********\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000158216'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 np0000158216'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] ***\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.664)       0:00:32.148 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.040)       0:00:32.188 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.038)       0:00:32.226 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.040)       0:00:32.267 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.046)       0:00:32.314 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.048)       0:00:32.362 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.307)       0:00:32.670 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:24:30 +0000 (0:00:00.053)       0:00:32.723 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:24:56 +0000 (0:00:26.153)       0:00:58.877 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:24:56 +0000 (0:00:00.049)       0:00:58.926 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:24:57 +0000 (0:00:00.306)       0:00:59.233 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:24:57 +0000 (0:00:00.054)       0:00:59.288 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:25:14 +0000 (0:00:17.535)       0:01:16.823 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 09 March 2026  15:25:14 +0000 (0:00:00.053)       0:01:16.877 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 09 March 2026  15:25:14 +0000 (0:00:00.039)       0:01:16.917 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 09 March 2026  15:25:15 +0000 (0:00:00.035)       0:01:16.953 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 09 March 2026  15:25:15 +0000 (0:00:00.038)       0:01:16.991 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 09 March 2026  15:25:15 +0000 (0:00:00.899)       0:01:17.891 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 09 March 2026  15:25:16 +0000 (0:00:00.664)       0:01:18.556 **********\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] **********\nMonday 09 March 2026  15:25:18 +0000 (0:00:01.391)       0:01:19.947 **********\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 09 March 2026  15:25:18 +0000 (0:00:00.750)       0:01:20.698 **********\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 09 March 2026  15:25:18 +0000 (0:00:00.005)       0:01:20.703 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:25:19 +0000 (0:00:00.493)       0:01:21.197 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:25:19 +0000 (0:00:00.302)       0:01:21.500 **********\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] *******************\nMonday 09 March 2026  15:25:19 +0000 (0:00:00.069)       0:01:21.569 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:25:20 +0000 (0:00:00.648)       0:01:22.217 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:25:21 +0000 (0:00:01.664)       0:01:23.882 **********\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] *******************\nMonday 09 March 2026  15:25:22 +0000 (0:00:00.073)       0:01:23.955 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:25:22 +0000 (0:00:00.647)       0:01:24.603 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nMonday 09 March 2026  15:25:24 +0000 (0:00:01.728)       0:01:26.331 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nMonday 09 March 2026  15:25:25 +0000 (0:00:00.728)       0:01:27.059 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:25:25 +0000 (0:00:00.304)       0:01:27.363 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:25:25 +0000 (0:00:00.310)       0:01:27.674 **********\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] *******************\nMonday 09 March 2026  15:25:25 +0000 (0:00:00.061)       0:01:27.735 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:25:27 +0000 (0:00:01.312)       0:01:29.048 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nMonday 09 March 2026  15:25:30 +0000 (0:00:03.894)       0:01:32.943 **********\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] ***********\nMonday 09 March 2026  15:25:31 +0000 (0:00:00.051)       0:01:32.994 **********\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nMonday 09 March 2026  15:25:31 +0000 (0:00:00.864)       0:01:33.859 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nMonday 09 March 2026  15:25:32 +0000 (0:00:00.436)       0:01:34.295 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nMonday 09 March 2026  15:25:33 +0000 (0:00:00.655)       0:01:34.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] *********************\nMonday 09 March 2026  15:25:34 +0000 (0:00:01.423)       0:01:36.374 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:25:34 +0000 (0:00:00.297)       0:01:36.671 **********\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:25:34 +0000 (0:00:00.048)       0:01:36.720 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:25:51 +0000 (0:00:16.704)       0:01:53.424 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nMonday 09 March 2026  15:25:51 +0000 (0:00:00.040)       0:01:53.464 **********\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nMonday 09 March 2026  15:25:51 +0000 (0:00:00.051)       0:01:53.515 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nMonday 09 March 2026  15:25:51 +0000 (0:00:00.032)       0:01:53.548 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nMonday 09 March 2026  15:25:54 +0000 (0:00:02.502)       0:01:56.050 **********\nchanged: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nchanged: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nMonday 09 March 2026  15:25:57 +0000 (0:00:03.148)       0:01:59.199 **********\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] ********\nMonday 09 March 2026  15:25:58 +0000 (0:00:00.813)       0:02:00.013 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nMonday 09 March 2026  15:25:58 +0000 (0:00:00.662)       0:02:00.675 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nMonday 09 March 2026  15:25:59 +0000 (0:00:00.669)       0:02:01.345 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nMonday 09 March 2026  15:25:59 +0000 (0:00:00.439)       0:02:01.784 **********\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] ***********\nMonday 09 March 2026  15:25:59 +0000 (0:00:00.036)       0:02:01.821 **********\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nMonday 09 March 2026  15:26:00 +0000 (0:00:00.766)       0:02:02.587 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nMonday 09 March 2026  15:26:01 +0000 (0:00:00.669)       0:02:03.257 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nMonday 09 March 2026  15:26:02 +0000 (0:00:00.728)       0:02:03.986 **********\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nMonday 09 March 2026  15:26:02 +0000 (0:00:00.005)       0:02:03.991 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nMonday 09 March 2026  15:26:03 +0000 (0:00:01.575)       0:02:05.567 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nMonday 09 March 2026  15:26:04 +0000 (0:00:00.809)       0:02:06.376 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nMonday 09 March 2026  15:26:05 +0000 (0:00:00.821)       0:02:07.197 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nMonday 09 March 2026  15:26:06 +0000 (0:00:00.839)       0:02:08.037 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nMonday 09 March 2026  15:26:06 +0000 (0:00:00.398)       0:02:08.436 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nMonday 09 March 2026  15:26:06 +0000 (0:00:00.495)       0:02:08.932 **********\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.074)       0:02:09.007 **********\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] ***\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.082)       0:02:09.089 **********\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.310)       0:02:09.400 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.040)       0:02:09.440 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.049)       0:02:09.490 **********\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nMonday 09 March 2026  15:26:07 +0000 (0:00:00.039)       0:02:09.530 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.689)       0:02:10.219 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.031)       0:02:10.251 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.034)       0:02:10.286 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.032)       0:02:10.318 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.032)       0:02:10.350 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.031)       0:02:10.382 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.033)       0:02:10.416 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nMonday 09 March 2026  15:26:08 +0000 (0:00:00.035)       0:02:10.451 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nMonday 09 March 2026  15:26:34 +0000 (0:00:26.087)       0:02:36.538 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nMonday 09 March 2026  15:26:34 +0000 (0:00:00.295)       0:02:36.834 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nMonday 09 March 2026  15:26:34 +0000 (0:00:00.036)       0:02:36.870 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.303)       0:02:37.173 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.295)       0:02:37.469 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.298)       0:02:37.768 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.038)       0:02:37.807 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.038)       0:02:37.845 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nMonday 09 March 2026  15:26:35 +0000 (0:00:00.040)       0:02:37.886 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nMonday 09 March 2026  15:26:43 +0000 (0:00:07.703)       0:02:45.589 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.842)       0:02:46.431 **********\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.042)       0:02:46.474 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.046)       0:02:46.521 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.044)       0:02:46.565 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.044)       0:02:46.609 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nMonday 09 March 2026  15:26:44 +0000 (0:00:00.040)       0:02:46.650 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nMonday 09 March 2026  15:26:45 +0000 (0:00:00.503)       0:02:47.154 **********\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:26:46 +0000 (0:00:01.001)       0:02:48.155 **********\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 09 March 2026  15:26:47 +0000 (0:00:00.836)       0:02:48.992 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:26:47 +0000 (0:00:00.298)       0:02:49.291 **********\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 09 March 2026  15:26:48 +0000 (0:00:00.832)       0:02:50.124 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:26:48 +0000 (0:00:00.316)       0:02:50.440 **********\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] *******************\nMonday 09 March 2026  15:26:48 +0000 (0:00:00.042)       0:02:50.483 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:26:49 +0000 (0:00:00.862)       0:02:51.345 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nMonday 09 March 2026  15:26:51 +0000 (0:00:01.715)       0:02:53.061 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nMonday 09 March 2026  15:26:51 +0000 (0:00:00.387)       0:02:53.448 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nMonday 09 March 2026  15:26:51 +0000 (0:00:00.301)       0:02:53.750 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nMonday 09 March 2026  15:26:52 +0000 (0:00:00.347)       0:02:54.097 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nMonday 09 March 2026  15:26:52 +0000 (0:00:00.295)       0:02:54.393 **********\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nMonday 09 March 2026  15:26:52 +0000 (0:00:00.290)       0:02:54.683 **********\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:26:52 +0000 (0:00:00.060)       0:02:54.744 **********\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] *******************\nMonday 09 March 2026  15:26:52 +0000 (0:00:00.044)       0:02:54.788 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:26:53 +0000 (0:00:00.823)       0:02:55.611 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:26:55 +0000 (0:00:02.026)       0:02:57.638 **********\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] ***************\nMonday 09 March 2026  15:26:55 +0000 (0:00:00.087)       0:02:57.725 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nMonday 09 March 2026  15:26:56 +0000 (0:00:00.737)       0:02:58.462 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nMonday 09 March 2026  15:26:57 +0000 (0:00:00.914)       0:02:59.377 **********\nchanged: [controller]\n\nPLAY [Install older version of Cluster API] ************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:26:59 +0000 (0:00:02.076)       0:03:01.453 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:27:00 +0000 (0:00:00.828)       0:03:02.282 **********\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] ***************\nMonday 09 March 2026  15:27:00 +0000 (0:00:00.040)       0:03:02.323 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************\nMonday 09 March 2026  15:27:00 +0000 (0:00:00.604)       0:03:02.927 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:28:07 +0000 (0:01:06.954)       0:04:09.882 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 09 March 2026  15:28:07 +0000 (0:00:00.042)       0:04:09.924 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:28:08 +0000 (0:00:00.330)       0:04:10.255 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.8.4/clusterctl-linux-amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:28:08 +0000 (0:00:00.046)       0:04:10.302 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:28:10 +0000 (0:00:01.690)       0:04:11.992 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.042)       0:04:12.034 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.696)       0:04:12.731 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.040)       0:04:12.772 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.807 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.842 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.033)       0:04:12.876 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***\nMonday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.911 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***\nMonday 09 March 2026  15:28:11 +0000 (0:00:00.304)       0:04:13.216 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***\nMonday 09 March 2026  15:28:13 +0000 (0:00:02.158)       0:04:15.375 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****\nMonday 09 March 2026  15:28:14 +0000 (0:00:00.807)       0:04:16.183 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***\nMonday 09 March 2026  15:28:19 +0000 (0:00:04.978)       0:04:21.161 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************\nMonday 09 March 2026  15:28:19 +0000 (0:00:00.031)       0:04:21.192 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***\nMonday 09 March 2026  15:28:19 +0000 (0:00:00.038)       0:04:21.231 **********\nchanged: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})\n\nTASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***\nMonday 09 March 2026  15:28:52 +0000 (0:00:33.172)       0:04:54.403 **********\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****\nMonday 09 March 2026  15:28:52 +0000 (0:00:00.067)       0:04:54.471 **********\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=128  changed=60   unreachable=0    failed=0    skipped=44   rescued=0    ignored=3\n\n\nTASKS RECAP ********************************************************************\nMonday 09 March 2026  15:28:58 +0000 (0:00:06.068)       0:05:00.539 **********\n===============================================================================\nvexxhost.kubernetes.cert_manager : Deploy Helm chart ------------------- 66.95s\nvexxhost.kubernetes.cluster_api : Set node selector for Cluster API components -- 33.17s\nvexxhost.containers.download_artifact : Download item ------------------ 26.15s\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 26.09s\nvexxhost.containers.download_artifact : Download item ------------------ 17.54s\nvexxhost.containers.download_artifact : Download item ------------------ 16.70s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 7.70s\nvexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 6.07s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 5.29s\nInstall Debian packages ------------------------------------------------- 5.06s\nvexxhost.kubernetes.cluster_api : Initialize the management cluster ----- 4.98s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.89s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.30s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.15s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 3.15s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 2.50s\nvexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.16s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.08s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.03s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.73s\nINFO     [cluster-api > prepare] Executed: Successful\nINFO     [cluster-api > converge] Executing\n\nPLAY [Converge] ****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:28:59 +0000 (0:00:00.017)       0:00:00.017 **********\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.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:29:02 +0000 (0:00:02.412)       0:00:02.429 **********\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] ***************\nMonday 09 March 2026  15:29:02 +0000 (0:00:00.077)       0:00:02.506 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************\nMonday 09 March 2026  15:29:02 +0000 (0:00:00.712)       0:00:03.219 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:29:05 +0000 (0:00:02.931)       0:00:06.150 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 09 March 2026  15:29:05 +0000 (0:00:00.041)       0:00:06.192 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:29:06 +0000 (0:00:00.426)       0:00:06.618 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.10.5/clusterctl-linux-amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:29:06 +0000 (0:00:00.032)       0:00:06.651 **********\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:29:07 +0000 (0:00:01.383)       0:00:08.035 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************\nMonday 09 March 2026  15:29:07 +0000 (0:00:00.033)       0:00:08.068 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:29:08 +0000 (0:00:00.948)       0:00:09.017 **********\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] ***************\nMonday 09 March 2026  15:29:08 +0000 (0:00:00.044)       0:00:09.061 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***\nMonday 09 March 2026  15:29:09 +0000 (0:00:00.638)       0:00:09.700 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***\nMonday 09 March 2026  15:29:09 +0000 (0:00:00.315)       0:00:10.016 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***\nMonday 09 March 2026  15:29:10 +0000 (0:00:00.665)       0:00:10.681 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***\nMonday 09 March 2026  15:29:11 +0000 (0:00:00.704)       0:00:11.385 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***\nMonday 09 March 2026  15:29:13 +0000 (0:00:02.420)       0:00:13.806 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***\nMonday 09 March 2026  15:29:13 +0000 (0:00:00.287)       0:00:14.094 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***\nMonday 09 March 2026  15:29:15 +0000 (0:00:02.201)       0:00:16.295 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****\nMonday 09 March 2026  15:29:16 +0000 (0:00:00.968)       0:00:17.264 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***\nMonday 09 March 2026  15:29:16 +0000 (0:00:00.037)       0:00:17.301 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************\nMonday 09 March 2026  15:29:16 +0000 (0:00:00.053)       0:00:17.354 **********\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***\nMonday 09 March 2026  15:29:34 +0000 (0:00:17.556)       0:00:34.911 **********\nchanged: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})\nchanged: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})\n\nTASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***\nMonday 09 March 2026  15:30:02 +0000 (0:00:28.300)       0:01:03.211 **********\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****\nMonday 09 March 2026  15:30:02 +0000 (0:00:00.074)       0:01:03.286 **********\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=21   changed=10   unreachable=0    failed=0    skipped=4    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 09 March 2026  15:30:09 +0000 (0:00:06.117)       0:01:09.404 **********\n===============================================================================\nvexxhost.kubernetes.cluster_api : Set node selector for Cluster API components -- 28.30s\nvexxhost.kubernetes.cluster_api : Run upgrade if required -------------- 17.56s\nvexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 6.12s\nvexxhost.kubernetes.cert_manager : Deploy Helm chart -------------------- 2.93s\nvexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster --- 2.42s\nGathering Facts --------------------------------------------------------- 2.41s\nvexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.20s\nvexxhost.containers.download_artifact : Download item ------------------- 1.38s\nvexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers --- 0.97s\nvexxhost.kubernetes.clusterctl : Create a configuration file ------------ 0.95s\nvexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.71s\nvexxhost.kubernetes.openstack_resource_controller : Generate manifests --- 0.70s\nvexxhost.kubernetes.openstack_resource_controller : Upload Kustomization --- 0.67s\nvexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.64s\nvexxhost.containers.directory : Create directory (/var/lib/downloads) --- 0.43s\nvexxhost.kubernetes.openstack_resource_controller : Create build directory --- 0.32s\nvexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers --- 0.29s\nvexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks --- 0.08s\nvexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs --- 0.07s\nvexxhost.kubernetes.cluster_api : Parse provider resources into version mapping --- 0.05s\nINFO     [cluster-api > converge] Executed: Successful\nINFO     [cluster-api > idempotence] Executing\n\nPLAY [Converge] ****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:30:10 +0000 (0:00:00.015)       0:00:00.015 **********\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.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:30:11 +0000 (0:00:01.512)       0:00:01.528 **********\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] ***************\nMonday 09 March 2026  15:30:11 +0000 (0:00:00.088)       0:00:01.616 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************\nMonday 09 March 2026  15:30:12 +0000 (0:00:00.740)       0:00:02.357 **********\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 09 March 2026  15:30:15 +0000 (0:00:03.245)       0:00:05.602 **********\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 09 March 2026  15:30:15 +0000 (0:00:00.047)       0:00:05.650 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 09 March 2026  15:30:16 +0000 (0:00:00.455)       0:00:06.105 **********\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.10.5/clusterctl-linux-amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 09 March 2026  15:30:16 +0000 (0:00:00.039)       0:00:06.145 **********\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 09 March 2026  15:30:16 +0000 (0:00:00.601)       0:00:06.747 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************\nMonday 09 March 2026  15:30:16 +0000 (0:00:00.036)       0:00:06.784 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 09 March 2026  15:30:17 +0000 (0:00:00.804)       0:00:07.588 **********\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] ***************\nMonday 09 March 2026  15:30:17 +0000 (0:00:00.046)       0:00:07.635 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***\nMonday 09 March 2026  15:30:18 +0000 (0:00:00.644)       0:00:08.279 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***\nMonday 09 March 2026  15:30:18 +0000 (0:00:00.305)       0:00:08.585 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***\nMonday 09 March 2026  15:30:19 +0000 (0:00:00.655)       0:00:09.240 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***\nMonday 09 March 2026  15:30:20 +0000 (0:00:00.745)       0:00:09.986 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***\nMonday 09 March 2026  15:30:22 +0000 (0:00:02.424)       0:00:12.410 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***\nMonday 09 March 2026  15:30:22 +0000 (0:00:00.321)       0:00:12.731 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***\nMonday 09 March 2026  15:30:25 +0000 (0:00:02.244)       0:00:14.976 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****\nMonday 09 March 2026  15:30:26 +0000 (0:00:00.991)       0:00:15.967 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***\nMonday 09 March 2026  15:30:26 +0000 (0:00:00.039)       0:00:16.007 **********\nok: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************\nMonday 09 March 2026  15:30:26 +0000 (0:00:00.055)       0:00:16.062 **********\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***\nMonday 09 March 2026  15:30:26 +0000 (0:00:00.042)       0:00:16.104 **********\nok: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})\nok: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})\nok: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})\nok: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})\n\nTASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***\nMonday 09 March 2026  15:30:29 +0000 (0:00:03.242)       0:00:19.347 **********\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****\nMonday 09 March 2026  15:30:29 +0000 (0:00:00.074)       0:00:19.421 **********\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=20   changed=0    unreachable=0    failed=0    skipped=5    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 09 March 2026  15:30:30 +0000 (0:00:01.094)       0:00:20.515 **********\n===============================================================================\nvexxhost.kubernetes.cert_manager : Deploy Helm chart -------------------- 3.25s\nvexxhost.kubernetes.cluster_api : Set node selector for Cluster API components --- 3.24s\nvexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster --- 2.42s\nvexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.24s\nGathering Facts --------------------------------------------------------- 1.51s\nvexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 1.09s\nvexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers --- 0.99s\nvexxhost.kubernetes.clusterctl : Create a configuration file ------------ 0.80s\nvexxhost.kubernetes.openstack_resource_controller : Generate manifests --- 0.75s\nvexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.74s\nvexxhost.kubernetes.openstack_resource_controller : Upload Kustomization --- 0.66s\nvexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.64s\nvexxhost.containers.download_artifact : Download item ------------------- 0.60s\nvexxhost.containers.directory : Create directory (/var/lib/downloads) --- 0.46s\nvexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers --- 0.32s\nvexxhost.kubernetes.openstack_resource_controller : Create build directory --- 0.31s\nvexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks --- 0.09s\nvexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs --- 0.07s\nvexxhost.kubernetes.cluster_api : Parse provider resources into version mapping --- 0.06s\nvexxhost.containers.package : Update state for tar ---------------------- 0.05s\nINFO     [cluster-api > idempotence] Executed: Successful\nINFO     [cluster-api > side_effect] Executing\nWARNING  [cluster-api > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [cluster-api > verify] Executing\n\nPLAY [Verify] ******************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 09 March 2026  15:30:31 +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 [Include default variables] ***********************************************\nMonday 09 March 2026  15:30:34 +0000 (0:00:02.532)       0:00:02.542 **********\nok: [controller] => (item=clusterctl)\nok: [controller] => (item=cluster_api)\n\nTASK [Ensure the \"clusterctl\" binary is installed] *****************************\nMonday 09 March 2026  15:30:34 +0000 (0:00:00.046)       0:00:02.588 **********\nchanged: [controller]\n\nTASK [Assert that the \"clusterctl\" binary is installed and version matches] ****\nMonday 09 March 2026  15:30:34 +0000 (0:00:00.453)       0:00:03.042 **********\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Ensure that the Cluster API components are ready] ************************\nMonday 09 March 2026  15:30:34 +0000 (0:00:00.076)       0:00:03.118 **********\nok: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})\nok: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})\nok: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})\nok: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})\n\nTASK [Ensure that the Cluster API CRDs exist] **********************************\nMonday 09 March 2026  15:30:38 +0000 (0:00:03.626)       0:00:06.745 **********\nok: [controller] => (item=clusters.cluster.x-k8s.io)\nok: [controller] => (item=openstackclusters.infrastructure.cluster.x-k8s.io)\nok: [controller] => (item=kubeadmcontrolplanes.controlplane.cluster.x-k8s.io)\nok: [controller] => (item=machinedeployments.cluster.x-k8s.io)\nok: [controller] => (item=machines.cluster.x-k8s.io)\nok: [controller] => (item=openstackmachines.infrastructure.cluster.x-k8s.io)\n\nTASK [Get a list of all Cluster API providers] *********************************\nMonday 09 March 2026  15:30:43 +0000 (0:00:04.846)       0:00:11.591 **********\nok: [controller]\n\nTASK [Parse provider resources into version mapping] ***************************\nMonday 09 March 2026  15:30:43 +0000 (0:00:00.797)       0:00:12.389 **********\nok: [controller]\n\nTASK [Assert that the versions are the correct ones] ***************************\nMonday 09 March 2026  15:30:44 +0000 (0:00:00.053)       0:00:12.442 **********\nok: [controller] => {\n    \"changed\": false,\n    \"msg\": \"All assertions passed\"\n}\n\nTASK [Create a test kcptemplate] ***********************************************\nMonday 09 March 2026  15:30:44 +0000 (0:00:00.042)       0:00:12.484 **********\nchanged: [controller]\n\nTASK [Reapply the test kcptemplate] ********************************************\nMonday 09 March 2026  15:30:45 +0000 (0:00:01.008)       0:00:13.493 **********\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=11   changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 09 March 2026  15:30:45 +0000 (0:00:00.817)       0:00:14.310 **********\n===============================================================================\nEnsure that the Cluster API CRDs exist ---------------------------------- 4.85s\nEnsure that the Cluster API components are ready ------------------------ 3.63s\nGathering Facts --------------------------------------------------------- 2.53s\nCreate a test kcptemplate ----------------------------------------------- 1.01s\nReapply the test kcptemplate -------------------------------------------- 0.82s\nGet a list of all Cluster API providers --------------------------------- 0.80s\nEnsure the \"clusterctl\" binary is installed ----------------------------- 0.45s\nAssert that the \"clusterctl\" binary is installed and version matches ---- 0.08s\nParse provider resources into version mapping --------------------------- 0.05s\nInclude default variables ----------------------------------------------- 0.05s\nAssert that the versions are the correct ones --------------------------- 0.04s\nINFO     [cluster-api > verify] Executed: Successful\nINFO     [cluster-api > cleanup] Executing\nWARNING  [cluster-api > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [cluster-api > destroy] Executing\nWARNING  [cluster-api > destroy] Skipping, '--destroy=never' requested.\nINFO     [cluster-api > 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 46ms",
                                "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     [cluster-api > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [cluster-api > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [cluster-api > dependency] Executing",
                                "WARNING  [cluster-api > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [cluster-api > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [cluster-api > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [cluster-api > cleanup] Executing",
                                "WARNING  [cluster-api > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [cluster-api > destroy] Executing",
                                "WARNING  [cluster-api > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [cluster-api > destroy] Executed: Successful",
                                "INFO     [cluster-api > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/cluster-api/converge.yml",
                                "INFO     [cluster-api > syntax] Executed: Successful",
                                "INFO     [cluster-api > create] Executing",
                                "WARNING  [cluster-api > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [cluster-api > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:23:58 +0000 (0:00:00.030)       0:00:00.030 **********",
                                "[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] *************************************************",
                                "Monday 09 March 2026  15:23:59 +0000 (0:00:01.274)       0:00:01.305 **********",
                                "ok: [controller]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:24:04 +0000 (0:00:05.063)       0:00:06.368 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Monday 09 March 2026  15:24:05 +0000 (0:00:00.803)       0:00:07.172 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Monday 09 March 2026  15:24:05 +0000 (0:00:00.430)       0:00:07.602 **********",
                                "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] ****",
                                "Monday 09 March 2026  15:24:07 +0000 (0:00:01.389)       0:00:08.992 **********",
                                "[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] *********",
                                "Monday 09 March 2026  15:24:07 +0000 (0:00:00.920)       0:00:09.912 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Monday 09 March 2026  15:24:08 +0000 (0:00:00.406)       0:00:10.319 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Monday 09 March 2026  15:24:08 +0000 (0:00:00.290)       0:00:10.610 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Monday 09 March 2026  15:24:08 +0000 (0:00:00.041)       0:00:10.652 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Monday 09 March 2026  15:24:08 +0000 (0:00:00.046)       0:00:10.698 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Monday 09 March 2026  15:24:09 +0000 (0:00:00.961)       0:00:11.660 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Monday 09 March 2026  15:24:10 +0000 (0:00:00.303)       0:00:11.963 **********",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:24:10 +0000 (0:00:00.050)       0:00:12.013 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:24:10 +0000 (0:00:00.808)       0:00:12.822 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:24:11 +0000 (0:00:00.366)       0:00:13.189 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 09 March 2026  15:24:11 +0000 (0:00:00.038)       0:00:13.228 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:24:11 +0000 (0:00:00.310)       0:00:13.539 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.0/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:24:11 +0000 (0:00:00.093)       0:00:13.633 **********",
                                "[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:24:12 +0000 (0:00:00.767)       0:00:14.400 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:24:12 +0000 (0:00:00.046)       0:00:14.447 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:24:12 +0000 (0:00:00.310)       0:00:14.758 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:24:13 +0000 (0:00:00.853)       0:00:15.611 **********",
                                "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] *******************",
                                "Monday 09 March 2026  15:24:13 +0000 (0:00:00.078)       0:00:15.689 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:24:14 +0000 (0:00:00.987)       0:00:16.677 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 09 March 2026  15:24:17 +0000 (0:00:03.148)       0:00:19.826 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 09 March 2026  15:24:17 +0000 (0:00:00.035)       0:00:19.861 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 09 March 2026  15:24:17 +0000 (0:00:00.036)       0:00:19.897 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 09 March 2026  15:24:17 +0000 (0:00:00.039)       0:00:19.937 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 09 March 2026  15:24:23 +0000 (0:00:05.285)       0:00:25.223 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 09 March 2026  15:24:23 +0000 (0:00:00.698)       0:00:25.921 **********",
                                "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] **********",
                                "Monday 09 March 2026  15:24:25 +0000 (0:00:01.418)       0:00:27.340 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 09 March 2026  15:24:26 +0000 (0:00:00.800)       0:00:28.140 **********",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Monday 09 March 2026  15:24:26 +0000 (0:00:00.006)       0:00:28.147 **********",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Monday 09 March 2026  15:24:27 +0000 (0:00:00.845)       0:00:28.992 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 09 March 2026  15:24:28 +0000 (0:00:01.725)       0:00:30.717 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Monday 09 March 2026  15:24:29 +0000 (0:00:00.766)       0:00:31.483 **********",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000158216'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 np0000158216'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] ***",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.664)       0:00:32.148 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.040)       0:00:32.188 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.038)       0:00:32.226 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.040)       0:00:32.267 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.046)       0:00:32.314 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.048)       0:00:32.362 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.307)       0:00:32.670 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:24:30 +0000 (0:00:00.053)       0:00:32.723 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:24:56 +0000 (0:00:26.153)       0:00:58.877 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:24:56 +0000 (0:00:00.049)       0:00:58.926 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:24:57 +0000 (0:00:00.306)       0:00:59.233 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:24:57 +0000 (0:00:00.054)       0:00:59.288 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:25:14 +0000 (0:00:17.535)       0:01:16.823 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 09 March 2026  15:25:14 +0000 (0:00:00.053)       0:01:16.877 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 09 March 2026  15:25:14 +0000 (0:00:00.039)       0:01:16.917 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 09 March 2026  15:25:15 +0000 (0:00:00.035)       0:01:16.953 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 09 March 2026  15:25:15 +0000 (0:00:00.038)       0:01:16.991 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 09 March 2026  15:25:15 +0000 (0:00:00.899)       0:01:17.891 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 09 March 2026  15:25:16 +0000 (0:00:00.664)       0:01:18.556 **********",
                                "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] **********",
                                "Monday 09 March 2026  15:25:18 +0000 (0:00:01.391)       0:01:19.947 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 09 March 2026  15:25:18 +0000 (0:00:00.750)       0:01:20.698 **********",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 09 March 2026  15:25:18 +0000 (0:00:00.005)       0:01:20.703 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:25:19 +0000 (0:00:00.493)       0:01:21.197 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:25:19 +0000 (0:00:00.302)       0:01:21.500 **********",
                                "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] *******************",
                                "Monday 09 March 2026  15:25:19 +0000 (0:00:00.069)       0:01:21.569 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:25:20 +0000 (0:00:00.648)       0:01:22.217 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:25:21 +0000 (0:00:01.664)       0:01:23.882 **********",
                                "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] *******************",
                                "Monday 09 March 2026  15:25:22 +0000 (0:00:00.073)       0:01:23.955 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:25:22 +0000 (0:00:00.647)       0:01:24.603 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Monday 09 March 2026  15:25:24 +0000 (0:00:01.728)       0:01:26.331 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Monday 09 March 2026  15:25:25 +0000 (0:00:00.728)       0:01:27.059 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:25:25 +0000 (0:00:00.304)       0:01:27.363 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:25:25 +0000 (0:00:00.310)       0:01:27.674 **********",
                                "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] *******************",
                                "Monday 09 March 2026  15:25:25 +0000 (0:00:00.061)       0:01:27.735 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:25:27 +0000 (0:00:01.312)       0:01:29.048 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Monday 09 March 2026  15:25:30 +0000 (0:00:03.894)       0:01:32.943 **********",
                                "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] ***********",
                                "Monday 09 March 2026  15:25:31 +0000 (0:00:00.051)       0:01:32.994 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Monday 09 March 2026  15:25:31 +0000 (0:00:00.864)       0:01:33.859 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Monday 09 March 2026  15:25:32 +0000 (0:00:00.436)       0:01:34.295 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Monday 09 March 2026  15:25:33 +0000 (0:00:00.655)       0:01:34.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] *********************",
                                "Monday 09 March 2026  15:25:34 +0000 (0:00:01.423)       0:01:36.374 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:25:34 +0000 (0:00:00.297)       0:01:36.671 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:25:34 +0000 (0:00:00.048)       0:01:36.720 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:25:51 +0000 (0:00:16.704)       0:01:53.424 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Monday 09 March 2026  15:25:51 +0000 (0:00:00.040)       0:01:53.464 **********",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Monday 09 March 2026  15:25:51 +0000 (0:00:00.051)       0:01:53.515 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Monday 09 March 2026  15:25:51 +0000 (0:00:00.032)       0:01:53.548 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Monday 09 March 2026  15:25:54 +0000 (0:00:02.502)       0:01:56.050 **********",
                                "changed: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Monday 09 March 2026  15:25:57 +0000 (0:00:03.148)       0:01:59.199 **********",
                                "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] ********",
                                "Monday 09 March 2026  15:25:58 +0000 (0:00:00.813)       0:02:00.013 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Monday 09 March 2026  15:25:58 +0000 (0:00:00.662)       0:02:00.675 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Monday 09 March 2026  15:25:59 +0000 (0:00:00.669)       0:02:01.345 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Monday 09 March 2026  15:25:59 +0000 (0:00:00.439)       0:02:01.784 **********",
                                "[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] ***********",
                                "Monday 09 March 2026  15:25:59 +0000 (0:00:00.036)       0:02:01.821 **********",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Monday 09 March 2026  15:26:00 +0000 (0:00:00.766)       0:02:02.587 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Monday 09 March 2026  15:26:01 +0000 (0:00:00.669)       0:02:03.257 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Monday 09 March 2026  15:26:02 +0000 (0:00:00.728)       0:02:03.986 **********",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Monday 09 March 2026  15:26:02 +0000 (0:00:00.005)       0:02:03.991 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Monday 09 March 2026  15:26:03 +0000 (0:00:01.575)       0:02:05.567 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Monday 09 March 2026  15:26:04 +0000 (0:00:00.809)       0:02:06.376 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Monday 09 March 2026  15:26:05 +0000 (0:00:00.821)       0:02:07.197 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Monday 09 March 2026  15:26:06 +0000 (0:00:00.839)       0:02:08.037 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Monday 09 March 2026  15:26:06 +0000 (0:00:00.398)       0:02:08.436 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Monday 09 March 2026  15:26:06 +0000 (0:00:00.495)       0:02:08.932 **********",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.074)       0:02:09.007 **********",
                                "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] ***",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.082)       0:02:09.089 **********",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.310)       0:02:09.400 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.040)       0:02:09.440 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.049)       0:02:09.490 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Monday 09 March 2026  15:26:07 +0000 (0:00:00.039)       0:02:09.530 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.689)       0:02:10.219 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.031)       0:02:10.251 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.034)       0:02:10.286 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.032)       0:02:10.318 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.032)       0:02:10.350 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.031)       0:02:10.382 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.033)       0:02:10.416 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Monday 09 March 2026  15:26:08 +0000 (0:00:00.035)       0:02:10.451 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Monday 09 March 2026  15:26:34 +0000 (0:00:26.087)       0:02:36.538 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Monday 09 March 2026  15:26:34 +0000 (0:00:00.295)       0:02:36.834 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Monday 09 March 2026  15:26:34 +0000 (0:00:00.036)       0:02:36.870 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.303)       0:02:37.173 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.295)       0:02:37.469 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.298)       0:02:37.768 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.038)       0:02:37.807 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.038)       0:02:37.845 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Monday 09 March 2026  15:26:35 +0000 (0:00:00.040)       0:02:37.886 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Monday 09 March 2026  15:26:43 +0000 (0:00:07.703)       0:02:45.589 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.842)       0:02:46.431 **********",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.042)       0:02:46.474 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.046)       0:02:46.521 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.044)       0:02:46.565 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.044)       0:02:46.609 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Monday 09 March 2026  15:26:44 +0000 (0:00:00.040)       0:02:46.650 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Monday 09 March 2026  15:26:45 +0000 (0:00:00.503)       0:02:47.154 **********",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:26:46 +0000 (0:00:01.001)       0:02:48.155 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 09 March 2026  15:26:47 +0000 (0:00:00.836)       0:02:48.992 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:26:47 +0000 (0:00:00.298)       0:02:49.291 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 09 March 2026  15:26:48 +0000 (0:00:00.832)       0:02:50.124 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:26:48 +0000 (0:00:00.316)       0:02:50.440 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:26:48 +0000 (0:00:00.042)       0:02:50.483 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:26:49 +0000 (0:00:00.862)       0:02:51.345 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Monday 09 March 2026  15:26:51 +0000 (0:00:01.715)       0:02:53.061 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Monday 09 March 2026  15:26:51 +0000 (0:00:00.387)       0:02:53.448 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Monday 09 March 2026  15:26:51 +0000 (0:00:00.301)       0:02:53.750 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Monday 09 March 2026  15:26:52 +0000 (0:00:00.347)       0:02:54.097 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Monday 09 March 2026  15:26:52 +0000 (0:00:00.295)       0:02:54.393 **********",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Monday 09 March 2026  15:26:52 +0000 (0:00:00.290)       0:02:54.683 **********",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:26:52 +0000 (0:00:00.060)       0:02:54.744 **********",
                                "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] *******************",
                                "Monday 09 March 2026  15:26:52 +0000 (0:00:00.044)       0:02:54.788 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:26:53 +0000 (0:00:00.823)       0:02:55.611 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:26:55 +0000 (0:00:02.026)       0:02:57.638 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:26:55 +0000 (0:00:00.087)       0:02:57.725 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Monday 09 March 2026  15:26:56 +0000 (0:00:00.737)       0:02:58.462 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Monday 09 March 2026  15:26:57 +0000 (0:00:00.914)       0:02:59.377 **********",
                                "changed: [controller]",
                                "",
                                "PLAY [Install older version of Cluster API] ************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:26:59 +0000 (0:00:02.076)       0:03:01.453 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:27:00 +0000 (0:00:00.828)       0:03:02.282 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:27:00 +0000 (0:00:00.040)       0:03:02.323 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************",
                                "Monday 09 March 2026  15:27:00 +0000 (0:00:00.604)       0:03:02.927 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:28:07 +0000 (0:01:06.954)       0:04:09.882 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 09 March 2026  15:28:07 +0000 (0:00:00.042)       0:04:09.924 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:28:08 +0000 (0:00:00.330)       0:04:10.255 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.8.4/clusterctl-linux-amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:28:08 +0000 (0:00:00.046)       0:04:10.302 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:01.690)       0:04:11.992 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.042)       0:04:12.034 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.696)       0:04:12.731 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.040)       0:04:12.772 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.807 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.842 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.033)       0:04:12.876 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***",
                                "Monday 09 March 2026  15:28:10 +0000 (0:00:00.035)       0:04:12.911 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***",
                                "Monday 09 March 2026  15:28:11 +0000 (0:00:00.304)       0:04:13.216 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***",
                                "Monday 09 March 2026  15:28:13 +0000 (0:00:02.158)       0:04:15.375 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****",
                                "Monday 09 March 2026  15:28:14 +0000 (0:00:00.807)       0:04:16.183 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***",
                                "Monday 09 March 2026  15:28:19 +0000 (0:00:04.978)       0:04:21.161 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************",
                                "Monday 09 March 2026  15:28:19 +0000 (0:00:00.031)       0:04:21.192 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***",
                                "Monday 09 March 2026  15:28:19 +0000 (0:00:00.038)       0:04:21.231 **********",
                                "changed: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***",
                                "Monday 09 March 2026  15:28:52 +0000 (0:00:33.172)       0:04:54.403 **********",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****",
                                "Monday 09 March 2026  15:28:52 +0000 (0:00:00.067)       0:04:54.471 **********",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=128  changed=60   unreachable=0    failed=0    skipped=44   rescued=0    ignored=3",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 09 March 2026  15:28:58 +0000 (0:00:06.068)       0:05:00.539 **********",
                                "===============================================================================",
                                "vexxhost.kubernetes.cert_manager : Deploy Helm chart ------------------- 66.95s",
                                "vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components -- 33.17s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 26.15s",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 26.09s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 17.54s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 16.70s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 7.70s",
                                "vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 6.07s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 5.29s",
                                "Install Debian packages ------------------------------------------------- 5.06s",
                                "vexxhost.kubernetes.cluster_api : Initialize the management cluster ----- 4.98s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.89s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.30s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.15s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 3.15s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 2.50s",
                                "vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.16s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.08s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.03s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.73s",
                                "INFO     [cluster-api > prepare] Executed: Successful",
                                "INFO     [cluster-api > converge] Executing",
                                "",
                                "PLAY [Converge] ****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:28:59 +0000 (0:00:00.017)       0:00:00.017 **********",
                                "[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.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:29:02 +0000 (0:00:02.412)       0:00:02.429 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:29:02 +0000 (0:00:00.077)       0:00:02.506 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************",
                                "Monday 09 March 2026  15:29:02 +0000 (0:00:00.712)       0:00:03.219 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:29:05 +0000 (0:00:02.931)       0:00:06.150 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 09 March 2026  15:29:05 +0000 (0:00:00.041)       0:00:06.192 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:29:06 +0000 (0:00:00.426)       0:00:06.618 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.10.5/clusterctl-linux-amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:29:06 +0000 (0:00:00.032)       0:00:06.651 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:29:07 +0000 (0:00:01.383)       0:00:08.035 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************",
                                "Monday 09 March 2026  15:29:07 +0000 (0:00:00.033)       0:00:08.068 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:29:08 +0000 (0:00:00.948)       0:00:09.017 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:29:08 +0000 (0:00:00.044)       0:00:09.061 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***",
                                "Monday 09 March 2026  15:29:09 +0000 (0:00:00.638)       0:00:09.700 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***",
                                "Monday 09 March 2026  15:29:09 +0000 (0:00:00.315)       0:00:10.016 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***",
                                "Monday 09 March 2026  15:29:10 +0000 (0:00:00.665)       0:00:10.681 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***",
                                "Monday 09 March 2026  15:29:11 +0000 (0:00:00.704)       0:00:11.385 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***",
                                "Monday 09 March 2026  15:29:13 +0000 (0:00:02.420)       0:00:13.806 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***",
                                "Monday 09 March 2026  15:29:13 +0000 (0:00:00.287)       0:00:14.094 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***",
                                "Monday 09 March 2026  15:29:15 +0000 (0:00:02.201)       0:00:16.295 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****",
                                "Monday 09 March 2026  15:29:16 +0000 (0:00:00.968)       0:00:17.264 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***",
                                "Monday 09 March 2026  15:29:16 +0000 (0:00:00.037)       0:00:17.301 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************",
                                "Monday 09 March 2026  15:29:16 +0000 (0:00:00.053)       0:00:17.354 **********",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***",
                                "Monday 09 March 2026  15:29:34 +0000 (0:00:17.556)       0:00:34.911 **********",
                                "changed: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})",
                                "changed: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***",
                                "Monday 09 March 2026  15:30:02 +0000 (0:00:28.300)       0:01:03.211 **********",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****",
                                "Monday 09 March 2026  15:30:02 +0000 (0:00:00.074)       0:01:03.286 **********",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=21   changed=10   unreachable=0    failed=0    skipped=4    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 09 March 2026  15:30:09 +0000 (0:00:06.117)       0:01:09.404 **********",
                                "===============================================================================",
                                "vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components -- 28.30s",
                                "vexxhost.kubernetes.cluster_api : Run upgrade if required -------------- 17.56s",
                                "vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 6.12s",
                                "vexxhost.kubernetes.cert_manager : Deploy Helm chart -------------------- 2.93s",
                                "vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster --- 2.42s",
                                "Gathering Facts --------------------------------------------------------- 2.41s",
                                "vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.20s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 1.38s",
                                "vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers --- 0.97s",
                                "vexxhost.kubernetes.clusterctl : Create a configuration file ------------ 0.95s",
                                "vexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.71s",
                                "vexxhost.kubernetes.openstack_resource_controller : Generate manifests --- 0.70s",
                                "vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization --- 0.67s",
                                "vexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.64s",
                                "vexxhost.containers.directory : Create directory (/var/lib/downloads) --- 0.43s",
                                "vexxhost.kubernetes.openstack_resource_controller : Create build directory --- 0.32s",
                                "vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers --- 0.29s",
                                "vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks --- 0.08s",
                                "vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs --- 0.07s",
                                "vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping --- 0.05s",
                                "INFO     [cluster-api > converge] Executed: Successful",
                                "INFO     [cluster-api > idempotence] Executing",
                                "",
                                "PLAY [Converge] ****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:30:10 +0000 (0:00:00.015)       0:00:00.015 **********",
                                "[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.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:30:11 +0000 (0:00:01.512)       0:00:01.528 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:30:11 +0000 (0:00:00.088)       0:00:01.616 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cert_manager : Deploy Helm chart] ********************",
                                "Monday 09 March 2026  15:30:12 +0000 (0:00:00.740)       0:00:02.357 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 09 March 2026  15:30:15 +0000 (0:00:03.245)       0:00:05.602 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 09 March 2026  15:30:15 +0000 (0:00:00.047)       0:00:05.650 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 09 March 2026  15:30:16 +0000 (0:00:00.455)       0:00:06.105 **********",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.10.5/clusterctl-linux-amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 09 March 2026  15:30:16 +0000 (0:00:00.039)       0:00:06.145 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 09 March 2026  15:30:16 +0000 (0:00:00.601)       0:00:06.747 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.clusterctl : Create a configuration file] ************",
                                "Monday 09 March 2026  15:30:16 +0000 (0:00:00.036)       0:00:06.784 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 09 March 2026  15:30:17 +0000 (0:00:00.804)       0:00:07.588 **********",
                                "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] ***************",
                                "Monday 09 March 2026  15:30:17 +0000 (0:00:00.046)       0:00:07.635 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Create build directory] ***",
                                "Monday 09 March 2026  15:30:18 +0000 (0:00:00.644)       0:00:08.279 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization] ***",
                                "Monday 09 March 2026  15:30:18 +0000 (0:00:00.305)       0:00:08.585 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Generate manifests] ***",
                                "Monday 09 March 2026  15:30:19 +0000 (0:00:00.655)       0:00:09.240 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster] ***",
                                "Monday 09 March 2026  15:30:20 +0000 (0:00:00.745)       0:00:09.986 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers] ***",
                                "Monday 09 March 2026  15:30:22 +0000 (0:00:02.424)       0:00:12.410 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system] ***",
                                "Monday 09 March 2026  15:30:22 +0000 (0:00:00.321)       0:00:12.731 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers] ***",
                                "Monday 09 March 2026  15:30:25 +0000 (0:00:02.244)       0:00:14.976 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Initialize the management cluster] *****",
                                "Monday 09 March 2026  15:30:26 +0000 (0:00:00.991)       0:00:15.967 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping] ***",
                                "Monday 09 March 2026  15:30:26 +0000 (0:00:00.039)       0:00:16.007 **********",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Run upgrade if required] ***************",
                                "Monday 09 March 2026  15:30:26 +0000 (0:00:00.055)       0:00:16.062 **********",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components] ***",
                                "Monday 09 March 2026  15:30:26 +0000 (0:00:00.042)       0:00:16.104 **********",
                                "ok: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs] ***",
                                "Monday 09 March 2026  15:30:29 +0000 (0:00:03.242)       0:00:19.347 **********",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanetemplates.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/1/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigs.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/template/properties/spec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/initConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller] => (item={'crd': 'kubeadmcontrolplanes.controlplane.cluster.x-k8s.io', 'path': '/spec/versions/2/schema/openAPIV3Schema/properties/spec/properties/kubeadmConfigSpec/properties/joinConfiguration/properties/nodeRegistration/properties/imagePullPolicy/default'})",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout] ****",
                                "Monday 09 March 2026  15:30:29 +0000 (0:00:00.074)       0:00:19.421 **********",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=20   changed=0    unreachable=0    failed=0    skipped=5    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 09 March 2026  15:30:30 +0000 (0:00:01.094)       0:00:20.515 **********",
                                "===============================================================================",
                                "vexxhost.kubernetes.cert_manager : Deploy Helm chart -------------------- 3.25s",
                                "vexxhost.kubernetes.cluster_api : Set node selector for Cluster API components --- 3.24s",
                                "vexxhost.kubernetes.openstack_resource_controller : Apply manifest to cluster --- 2.42s",
                                "vexxhost.kubernetes.cluster_api : Copy over all provider configuration to the remote system --- 2.24s",
                                "Gathering Facts --------------------------------------------------------- 1.51s",
                                "vexxhost.kubernetes.cluster_api : Set CAPO instance creation timeout ---- 1.09s",
                                "vexxhost.kubernetes.cluster_api : Get a list of all Cluster API providers --- 0.99s",
                                "vexxhost.kubernetes.clusterctl : Create a configuration file ------------ 0.80s",
                                "vexxhost.kubernetes.openstack_resource_controller : Generate manifests --- 0.75s",
                                "vexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.74s",
                                "vexxhost.kubernetes.openstack_resource_controller : Upload Kustomization --- 0.66s",
                                "vexxhost.kubernetes.upload_helm_chart : Upload Helm chart --------------- 0.64s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.60s",
                                "vexxhost.containers.directory : Create directory (/var/lib/downloads) --- 0.46s",
                                "vexxhost.kubernetes.cluster_api : Create a folder for the Cluster API providers --- 0.32s",
                                "vexxhost.kubernetes.openstack_resource_controller : Create build directory --- 0.31s",
                                "vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks --- 0.09s",
                                "vexxhost.kubernetes.cluster_api : Set default values for imagePullPolicy in kubeadmConfigSpec of CRDs --- 0.07s",
                                "vexxhost.kubernetes.cluster_api : Parse provider resources into version mapping --- 0.06s",
                                "vexxhost.containers.package : Update state for tar ---------------------- 0.05s",
                                "INFO     [cluster-api > idempotence] Executed: Successful",
                                "INFO     [cluster-api > side_effect] Executing",
                                "WARNING  [cluster-api > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [cluster-api > verify] Executing",
                                "",
                                "PLAY [Verify] ******************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 09 March 2026  15:30:31 +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 [Include default variables] ***********************************************",
                                "Monday 09 March 2026  15:30:34 +0000 (0:00:02.532)       0:00:02.542 **********",
                                "ok: [controller] => (item=clusterctl)",
                                "ok: [controller] => (item=cluster_api)",
                                "",
                                "TASK [Ensure the \"clusterctl\" binary is installed] *****************************",
                                "Monday 09 March 2026  15:30:34 +0000 (0:00:00.046)       0:00:02.588 **********",
                                "changed: [controller]",
                                "",
                                "TASK [Assert that the \"clusterctl\" binary is installed and version matches] ****",
                                "Monday 09 March 2026  15:30:34 +0000 (0:00:00.453)       0:00:03.042 **********",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Ensure that the Cluster API components are ready] ************************",
                                "Monday 09 March 2026  15:30:34 +0000 (0:00:00.076)       0:00:03.118 **********",
                                "ok: [controller] => (item={'namespace': 'capi-kubeadm-bootstrap-system', 'name': 'capi-kubeadm-bootstrap-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capi-kubeadm-control-plane-system', 'name': 'capi-kubeadm-control-plane-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capi-system', 'name': 'capi-controller-manager'})",
                                "ok: [controller] => (item={'namespace': 'capo-system', 'name': 'capo-controller-manager'})",
                                "",
                                "TASK [Ensure that the Cluster API CRDs exist] **********************************",
                                "Monday 09 March 2026  15:30:38 +0000 (0:00:03.626)       0:00:06.745 **********",
                                "ok: [controller] => (item=clusters.cluster.x-k8s.io)",
                                "ok: [controller] => (item=openstackclusters.infrastructure.cluster.x-k8s.io)",
                                "ok: [controller] => (item=kubeadmcontrolplanes.controlplane.cluster.x-k8s.io)",
                                "ok: [controller] => (item=machinedeployments.cluster.x-k8s.io)",
                                "ok: [controller] => (item=machines.cluster.x-k8s.io)",
                                "ok: [controller] => (item=openstackmachines.infrastructure.cluster.x-k8s.io)",
                                "",
                                "TASK [Get a list of all Cluster API providers] *********************************",
                                "Monday 09 March 2026  15:30:43 +0000 (0:00:04.846)       0:00:11.591 **********",
                                "ok: [controller]",
                                "",
                                "TASK [Parse provider resources into version mapping] ***************************",
                                "Monday 09 March 2026  15:30:43 +0000 (0:00:00.797)       0:00:12.389 **********",
                                "ok: [controller]",
                                "",
                                "TASK [Assert that the versions are the correct ones] ***************************",
                                "Monday 09 March 2026  15:30:44 +0000 (0:00:00.053)       0:00:12.442 **********",
                                "ok: [controller] => {",
                                "    \"changed\": false,",
                                "    \"msg\": \"All assertions passed\"",
                                "}",
                                "",
                                "TASK [Create a test kcptemplate] ***********************************************",
                                "Monday 09 March 2026  15:30:44 +0000 (0:00:00.042)       0:00:12.484 **********",
                                "changed: [controller]",
                                "",
                                "TASK [Reapply the test kcptemplate] ********************************************",
                                "Monday 09 March 2026  15:30:45 +0000 (0:00:01.008)       0:00:13.493 **********",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=11   changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 09 March 2026  15:30:45 +0000 (0:00:00.817)       0:00:14.310 **********",
                                "===============================================================================",
                                "Ensure that the Cluster API CRDs exist ---------------------------------- 4.85s",
                                "Ensure that the Cluster API components are ready ------------------------ 3.63s",
                                "Gathering Facts --------------------------------------------------------- 2.53s",
                                "Create a test kcptemplate ----------------------------------------------- 1.01s",
                                "Reapply the test kcptemplate -------------------------------------------- 0.82s",
                                "Get a list of all Cluster API providers --------------------------------- 0.80s",
                                "Ensure the \"clusterctl\" binary is installed ----------------------------- 0.45s",
                                "Assert that the \"clusterctl\" binary is installed and version matches ---- 0.08s",
                                "Parse provider resources into version mapping --------------------------- 0.05s",
                                "Include default variables ----------------------------------------------- 0.05s",
                                "Assert that the versions are the correct ones --------------------------- 0.04s",
                                "INFO     [cluster-api > verify] Executed: Successful",
                                "INFO     [cluster-api > cleanup] Executing",
                                "WARNING  [cluster-api > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [cluster-api > destroy] Executing",
                                "WARNING  [cluster-api > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [cluster-api > destroy] Executed: Successful",
                                "WARNING  Molecule executed 1 scenario (1 missing files)"
                            ],
                            "zuul_log_id": "0242ac17-0011-9d47-0315-000000000006-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:46.451704Z",
                            "start": "2026-03-09T15:23:35.265818Z"
                        },
                        "id": "0242ac17-0011-9d47-0315-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-03-09T15:30:50.569977Z",
                    "start": "2026-03-09T15:30:47.202896Z"
                },
                "id": "0242ac17-0011-d639-9203-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:47.259707Z",
                            "start": "2026-03-09T15:30:47.213261Z"
                        },
                        "id": "0242ac17-0011-d639-9203-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:47.308774Z",
                            "start": "2026-03-09T15:30:47.265105Z"
                        },
                        "id": "0242ac17-0011-d639-9203-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/6f9349e706114134b4bf50f71bc761d1/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:48.182913Z",
                            "start": "2026-03-09T15:30:47.313754Z"
                        },
                        "id": "0242ac17-0011-d639-9203-00000000000a",
                        "name": "Ensure local output dirs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output",
                                    "changed": true,
                                    "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --no-owner --no-group --rsh='/usr/bin/ssh -S none -o Port=22' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.99:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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.204.45.99:/home/zuul/zuul-output/logs/",
                                            "ssh_connection_multiplexing": false,
                                            "times": null,
                                            "use_ssh_args": false,
                                            "verify_host": true
                                        }
                                    },
                                    "msg": ".d..t...... ./\n",
                                    "rc": 0,
                                    "stdout_lines": [
                                        ".d..t...... ./"
                                    ],
                                    "zj_output": {
                                        "dest": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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.204.45.99:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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.204.45.99:/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/6f9349e706114134b4bf50f71bc761d1/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.204.45.99:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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.204.45.99:/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/6f9349e706114134b4bf50f71bc761d1/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:49.868814Z",
                            "start": "2026-03-09T15:30:48.190880Z"
                        },
                        "id": "0242ac17-0011-d639-9203-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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/artifacts/* /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.007261",
                                    "end": "2026-03-09 15:30:50.258711",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/artifacts/* /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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-03-09 15:30:50.251450",
                                    "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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/docs/* /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.012344",
                                    "end": "2026-03-09 15:30:50.511837",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/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/6f9349e706114134b4bf50f71bc761d1/work/docs/* /var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/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-03-09 15:30:50.499493",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:50.569977Z",
                            "start": "2026-03-09T15:30:49.881066Z"
                        },
                        "id": "0242ac17-0011-d639-9203-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-03-09T15:30:51.069310Z",
                    "start": "2026-03-09T15:30:50.580547Z"
                },
                "id": "0242ac17-0011-d639-9203-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyFUWN92S6Dvy6A2Wf8AoZCM95dI7nhTUc3tIR5UXgRW4yakJOpu2i+Tk1AMeNfl/Fb6o+AdWug/Yun6ZTlLuioPUo9qQ8tNcMYy1HOuK9B/ARsYAOU4RMFvb9Ut1lxSc7d2xEcCDgBFGLMHUjHU0J/1r/UQBUCa9gUZuTG3YmdOVPM0xWhLno2MR9stdlfujgwnO5G+QhWQZ2m+WweL/NfaLfscg5e/AqkURfi4izTMNrWiLcEAOTLKFFOUxf947PthBmv/ZIB15b5tOwFzSA5AgenUFh+5cRtjWByadaKsj5s1ZtzvyUkvNIO+VPrZdhIsLGX8O4M3xwfWgJNQJ0aeE+QYQataNdw+oy93ByTzc2neDsY/zUP8Brjmp5XnHUQIXjOtYHKx+lYbrTqhd4kwuhzlFZARoDbT+OLKCmtiEk/Bbz9lQd83UUkGbcGFdsVEfdciZ0WdfGeagUuTY7LmA/ccVw4XCfi87pMkmk0FVvYs/CVYA1gtkrRHmebV8= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCyFUWN92S6Dvy6A2Wf8AoZCM95dI7nhTUc3tIR5UXgRW4yakJOpu2i+Tk1AMeNfl/Fb6o+AdWug/Yun6ZTlLuioPUo9qQ8tNcMYy1HOuK9B/ARsYAOU4RMFvb9Ut1lxSc7d2xEcCDgBFGLMHUjHU0J/1r/UQBUCa9gUZuTG3YmdOVPM0xWhLno2MR9stdlfujgwnO5G+QhWQZ2m+WweL/NfaLfscg5e/AqkURfi4izTMNrWiLcEAOTLKFFOUxf947PthBmv/ZIB15b5tOwFzSA5AgenUFh+5cRtjWByadaKsj5s1ZtzvyUkvNIO+VPrZdhIsLGX8O4M3xwfWgJNQJ0aeE+QYQataNdw+oy93ByTzc2neDsY/zUP8Brjmp5XnHUQIXjOtYHKx+lYbrTqhd4kwuhzlFZARoDbT+OLKCmtiEk/Bbz9lQd83UUkGbcGFdsVEfdciZ0WdfGeagUuTY7LmA/ccVw4XCfi87pMkmk0FVvYs/CVYA1gtkrRHmebV8= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "absent",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0011-d639-9203-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/6f9349e706114134b4bf50f71bc761d1/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-03-09T15:30:51.069310Z",
                            "start": "2026-03-09T15:30:50.587631Z"
                        },
                        "id": "0242ac17-0011-d639-9203-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
}
]
