[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:25:41.537139Z",
                    "start": "2026-08-06T17:25:38.769164Z"
                },
                "id": "0242ac17-0010-e6f0-2a40-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-08-06",
                                    "day": "06",
                                    "epoch": "1786037139",
                                    "epoch_int": "1786037139",
                                    "hour": "17",
                                    "iso8601": "2026-08-06T17:25:39Z",
                                    "iso8601_basic": "20260806T172539603154",
                                    "iso8601_basic_short": "20260806T172539",
                                    "iso8601_micro": "2026-08-06T17:25:39.603154Z",
                                    "minute": "25",
                                    "month": "08",
                                    "second": "39",
                                    "time": "17:25:39",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Thursday",
                                    "weekday_number": "4",
                                    "weeknumber": "31",
                                    "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/932e4ad87dbb439bb12a312a17c87bd7/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/kube/config",
                                    "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/932e4ad87dbb439bb12a312a17c87bd7/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": "3704061",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-90bbc7bdn80A/agent.3704058",
                                    "TMP": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/ansible/logging.json",
                                    "ZUUL_OUTPUT_MAX_BYTES": "1073741824"
                                },
                                "ansible_fibre_channel_wwn": [],
                                "ansible_fips": false,
                                "ansible_form_factor": "NA",
                                "ansible_fqdn": "2d72f0692154",
                                "ansible_hostname": "2d72f0692154",
                                "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": 4.03369140625,
                                    "1m": 4.86181640625,
                                    "5m": 4.16943359375
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 3074,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 13513,
                                        "used": 18577
                                    },
                                    "real": {
                                        "free": 3074,
                                        "total": 32090,
                                        "used": 29016
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 8083191,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518389,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108750336,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083191,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518389,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108750336,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083183,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518397,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108717568,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083143,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518437,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108553728,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083135,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518445,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108520960,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083117,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518463,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108447232,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083111,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518469,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108422656,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083111,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518469,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108422656,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083070,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518510,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108254720,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083042,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518538,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108140032,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 72546139,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 191394578,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 34721663,
                                        "inode_total": 67108864,
                                        "inode_used": 32387201,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 297148985344,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 8083023,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 32518557,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16604959,
                                        "inode_total": 20643840,
                                        "inode_used": 4038881,
                                        "mount": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 33108062208,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    }
                                ],
                                "ansible_nodename": "2d72f0692154",
                                "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": 49700869,
                                "ansible_user_dir": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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-08-06T17:25:39.824929Z",
                            "start": "2026-08-06T17:25:38.777822Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:39.863241Z",
                            "start": "2026-08-06T17:25:39.831123Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "932/oss/932e4ad87dbb439bb12a312a17c87bd7"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:39.915548Z",
                            "start": "2026-08-06T17:25:39.882229Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.18\nJob: ansible-collection-kubernetes-molecule-bgp\nPipeline: check\nExecutor: 2d72f0692154\nTriggered by: https://github.com/vexxhost/ansible-collection-kubernetes/pull/221\nEvent ID: 521b9fd0-91bb-11f1-9faa-a6cdbd1fdabc\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:39.962564Z",
                            "start": "2026-08-06T17:25:39.922195Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-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: np0000188176\nUsername: zuul\nDistro: Debian 13.6\nProvider: yul1\nRegion: ca-ymq-1\nLabel: debian-trixie\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.35\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:40.070139Z",
                            "start": "2026-08-06T17:25:39.966786Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:40.520326Z",
                            "start": "2026-08-06T17:25:40.082274Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "b201ce2793233b0d2b580fede688a186005cca22",
                            "dest": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "b201ce2793233b0d2b580fede688a186005cca22",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/.ansible/tmp/ansible-tmp-1786037140.5517519-84-219311776080477/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "90c27b8cba3f107294a2bf36594ce461",
                            "mode": "0644",
                            "owner": "root",
                            "size": 15519,
                            "src": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/.ansible/tmp/ansible-tmp-1786037140.5517519-84-219311776080477/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:41.537139Z",
                            "start": "2026-08-06T17:25:40.524467Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:25:48.715437Z",
                    "start": "2026-08-06T17:25:41.545898Z"
                },
                "id": "0242ac17-0010-e6f0-2a40-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/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:41.802432Z",
                            "start": "2026-08-06T17:25:41.553474Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-000000000018",
                        "name": "Check to see if ssh key was already created for this build"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "create-key-and-replace.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:41.840668Z",
                            "start": "2026-08-06T17:25:41.810023Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-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/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.813881",
                            "end": "2026-08-06 17:25:43.100409",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa -b 3072",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-e6f0-2a40-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:25:42.286528",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa.pub\nThe key fingerprint is:\nSHA256:O4w3dEDKr8WW4nTE7aC7lkMwFT02lZcY4z7ZloeCgVY zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|      .oE.++ .   |\n|     ..*=oo.o    |\n|     .=.*oo.     |\n|    o. = O o o   |\n|     o+ S B = .  |\n|     o.@ o + .   |\n|     .=.*        |\n|      +o o       |\n|     ...         |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:O4w3dEDKr8WW4nTE7aC7lkMwFT02lZcY4z7ZloeCgVY zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|      .oE.++ .   |",
                                "|     ..*=oo.o    |",
                                "|     .=.*oo.     |",
                                "|    o. = O o o   |",
                                "|     o+ S B = .  |",
                                "|     o.@ o + .   |",
                                "|     .=.*        |",
                                "|      +o o       |",
                                "|     ...         |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-e6f0-2a40-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:43.147620Z",
                            "start": "2026-08-06T17:25:41.863066Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:43.186616Z",
                            "start": "2026-08-06T17:25:43.153914Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000009d",
                        "name": "Remote setup ssh keys (linux)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "lineinfile",
                            "changed": false,
                            "false_condition": "zuul_build_sshkey_cleanup",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:43.225601Z",
                            "start": "2026-08-06T17:25:43.201253Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDR8WNboXA+jQugphn7oXM2WRs4OXzS5JaVXbVO+FbVrNzLWUwjHkUwtN80Ou2hVc7Pp6Zw3IvrCiU1PHGoLpfQwWvKlU4dIfd5B1LWPNR7QVdCDrSJmfsKcN7bNYy5c1IwjL/8qcWTuC1d7/wDhWij/x53vh3erzBOzgD3boil31zeI1TNedzMuNmQbIbOLwjvBF2C+WJODn9IXxemjWC5741NXwxGYAMOg12jPr07KBAxHiAFMulqrufQd3tXefqzdmSGqKHkXov5wIKEjVZUlr0iGXKekB1QQOPC6BUwT6YbzZ4AkQmrV9g9gFDeECgZxOOnghhn7D1OB7gcRiQm2HXzWvXHyowKrPn1bwDhoPjFk9f87DIuoaut02uBEEPhcUR0Cwivfgzl56g1Njq+rsC+ahi2/Vk6rOwX85q39TJMT9Oew2IOUAh5a3dfCt9cbCqtfT7SfzBhIT099P7AV43Xq1EE2OxwFZ8LckqFrANXOm8KOWDkmJopvPkUc9U= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDR8WNboXA+jQugphn7oXM2WRs4OXzS5JaVXbVO+FbVrNzLWUwjHkUwtN80Ou2hVc7Pp6Zw3IvrCiU1PHGoLpfQwWvKlU4dIfd5B1LWPNR7QVdCDrSJmfsKcN7bNYy5c1IwjL/8qcWTuC1d7/wDhWij/x53vh3erzBOzgD3boil31zeI1TNedzMuNmQbIbOLwjvBF2C+WJODn9IXxemjWC5741NXwxGYAMOg12jPr07KBAxHiAFMulqrufQd3tXefqzdmSGqKHkXov5wIKEjVZUlr0iGXKekB1QQOPC6BUwT6YbzZ4AkQmrV9g9gFDeECgZxOOnghhn7D1OB7gcRiQm2HXzWvXHyowKrPn1bwDhoPjFk9f87DIuoaut02uBEEPhcUR0Cwivfgzl56g1Njq+rsC+ahi2/Vk6rOwX85q39TJMT9Oew2IOUAh5a3dfCt9cbCqtfT7SfzBhIT099P7AV43Xq1EE2OxwFZ8LckqFrANXOm8KOWDkmJopvPkUc9U= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "present",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:43.779159Z",
                            "start": "2026-08-06T17:25:43.234630Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000bd",
                        "name": "Enable access via build key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "diff": {
                                "after": {
                                    "path": "/home/zuul/.ssh"
                                },
                                "before": {
                                    "path": "/home/zuul/.ssh"
                                }
                            },
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_diff_peek": null,
                                    "_original_basename": null,
                                    "access_time": null,
                                    "access_time_format": "%Y%m%d%H%M.%S",
                                    "attributes": null,
                                    "follow": true,
                                    "force": false,
                                    "group": null,
                                    "mode": 448,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/home/zuul/.ssh",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0700",
                            "owner": "zuul",
                            "path": "/home/zuul/.ssh",
                            "size": 4096,
                            "state": "directory",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:43.990689Z",
                            "start": "2026-08-06T17:25:43.785467Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "c2d5bb03838b9403d3871170c3f236b7e7adde4e",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "932e4ad87dbb439bb12a312a17c87bd7_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "c2d5bb03838b9403d3871170c3f236b7e7adde4e",
                                    "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-1786037144.0380452-190-107766748159510/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "aff1305804118aab385efeed14207741",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1786037144.0380452-190-107766748159510/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:44.525807Z",
                            "start": "2026-08-06T17:25:43.994473Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "dc65953c8d5a4a449ab757652d5ac9d60af93d53",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "932e4ad87dbb439bb12a312a17c87bd7_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "dc65953c8d5a4a449ab757652d5ac9d60af93d53",
                                    "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-1786037144.5893197-200-135145507628408/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "0410f40d9290d94ce1317389a8a34200",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1786037144.5893197-200-135145507628408/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:45.084319Z",
                            "start": "2026-08-06T17:25:44.530878Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000c0",
                        "name": "Install build public key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:45.115107Z",
                            "start": "2026-08-06T17:25:45.089823Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000009e",
                        "name": "Remote setup ssh keys (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "sshagent_remove_keys",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "remove": "^(?!\\(stdin\\)).*"
                                }
                            },
                            "removed": [
                                "/etc/zuul/id_rsa"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:45.516528Z",
                            "start": "2026-08-06T17:25:45.123460Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa"
                            ],
                            "delta": "0:00:00.015449",
                            "end": "2026-08-06 17:25:45.814260",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-e6f0-2a40-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:25:45.798811",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/932e4ad87dbb439bb12a312a17c87bd7_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-e6f0-2a40-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:45.865679Z",
                            "start": "2026-08-06T17:25:45.526425Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:46.206330Z",
                            "start": "2026-08-06T17:25:45.870931Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000ac",
                        "name": "Verify we can still SSH to all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"Windows\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:46.236178Z",
                            "start": "2026-08-06T17:25:46.211404Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-0000000000ad",
                        "name": "Verify we can still SSH to all nodes (windows)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "zuul_console",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "path": "/tmp/console-{log_uuid}.log",
                                    "port": 19885,
                                    "state": "present"
                                }
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:46.608846Z",
                            "start": "2026-08-06T17:25:46.249465Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000001d",
                        "name": "Start zuul_console daemon."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result",
                            "changed": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:47.533539Z",
                            "start": "2026-08-06T17:25:46.614267Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-00000000001e",
                        "name": "Synchronize src repos to workspace directory."
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/logs",
                                    "state": "absent",
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "state": "absent",
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "absent",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "path": "/home/zuul/zuul-output/docs",
                                    "state": "absent",
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:48.114561Z",
                            "start": "2026-08-06T17:25:47.543903Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-000000000022",
                        "name": "Empty Zuul Output directories by removing them"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/logs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/logs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/artifacts",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "mode": "0755",
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "mode": "0775",
                                            "path": "/home/zuul/zuul-output/docs",
                                            "state": "absent"
                                        }
                                    },
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_diff_peek": null,
                                            "_original_basename": null,
                                            "access_time": null,
                                            "access_time_format": "%Y%m%d%H%M.%S",
                                            "attributes": null,
                                            "follow": true,
                                            "force": false,
                                            "group": null,
                                            "mode": 493,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/home/zuul/zuul-output/docs",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "zuul",
                                    "path": "/home/zuul/zuul-output/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 1000,
                                    "zj_output_dir": "docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e6f0-2a40-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:48.715437Z",
                            "start": "2026-08-06T17:25:48.121786Z"
                        },
                        "id": "0242ac17-0010-e6f0-2a40-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-08-06T17:25:53.455752Z",
                    "start": "2026-08-06T17:25:49.608078Z"
                },
                "id": "0242ac17-0010-f29a-44e6-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-1786037149.6666408-5-237946373692370/uv-x86_64-unknown-linux-gnu52eft4j8.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-1786037149.6666408-5-237946373692370/uv-x86_64-unknown-linux-gnu52eft4j8.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-f29a-44e6-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:52.474433Z",
                            "start": "2026-08-06T17:25:49.622935Z"
                        },
                        "id": "0242ac17-0010-f29a-44e6-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.015481",
                            "end": "2026-08-06 17:25:52.974331",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "/usr/local/bin/uv --version",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-f29a-44e6-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:25:52.958850",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-f29a-44e6-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-f29a-44e6-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:53.030817Z",
                            "start": "2026-08-06T17:25:52.495409Z"
                        },
                        "id": "0242ac17-0010-f29a-44e6-000000000008",
                        "name": "Print version"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "molecule_install_galaxy_sibling_collections",
                            "changed": false,
                            "checkouts": [],
                            "installed": [],
                            "invocation": {
                                "module_args": {
                                    "build_refs": [
                                        {
                                            "branch": "main",
                                            "change": "221",
                                            "change_message": "WIP: Add IPv6 support\n\nAdd IPv6 support for k8s. Currently it is still a WIP",
                                            "change_url": "https://github.com/vexxhost/ansible-collection-kubernetes/pull/221",
                                            "commit_id": "95dee2f0089dc7be533fffc3a835b37a9a5b4595",
                                            "patchset": "95dee2f0089dc7be533fffc3a835b37a9a5b4595",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/ansible-collection-kubernetes",
                                                "name": "vexxhost/ansible-collection-kubernetes",
                                                "short_name": "ansible-collection-kubernetes",
                                                "src_dir": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                            },
                                            "src_dir": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                            "topic": null
                                        },
                                        {
                                            "branch": "main",
                                            "change": "221",
                                            "change_message": "WIP: Add IPv6 support\n\nAdd IPv6 support for k8s. Currently it is still a WIP",
                                            "change_url": "https://github.com/vexxhost/ansible-collection-kubernetes/pull/221",
                                            "commit_id": "95dee2f0089dc7be533fffc3a835b37a9a5b4595",
                                            "patchset": "95dee2f0089dc7be533fffc3a835b37a9a5b4595",
                                            "project": {
                                                "canonical_hostname": "github.com",
                                                "canonical_name": "github.com/vexxhost/ansible-collection-kubernetes",
                                                "name": "vexxhost/ansible-collection-kubernetes",
                                                "short_name": "ansible-collection-kubernetes",
                                                "src_dir": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                            },
                                            "topic": null
                                        }
                                    ],
                                    "collections_path": "/home/zuul/.ansible/collections",
                                    "executable": "uv",
                                    "project_dir": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "projects": [
                                        {
                                            "canonical_hostname": "github.com",
                                            "canonical_name": "github.com/vexxhost/ansible-collection-kubernetes",
                                            "checkout": "main",
                                            "checkout_description": "zuul branch",
                                            "commit": "d52b65a6820b9f74df41a512d8afa331585f9d42",
                                            "name": "vexxhost/ansible-collection-kubernetes",
                                            "required": false,
                                            "short_name": "ansible-collection-kubernetes",
                                            "src_dir": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                        }
                                    ],
                                    "workspace_dir": "/home/zuul"
                                }
                            },
                            "log": [
                                "Skipping ansible.posix: no checked-out sibling",
                                "Skipping community.crypto: no checked-out sibling",
                                "Skipping community.general: no checked-out sibling",
                                "Skipping kubernetes.core: no checked-out sibling",
                                "Skipping vexxhost.containers: no checked-out sibling"
                            ],
                            "msg": "Skipping ansible.posix: no checked-out sibling\nSkipping community.crypto: no checked-out sibling\nSkipping community.general: no checked-out sibling\nSkipping kubernetes.core: no checked-out sibling\nSkipping vexxhost.containers: no checked-out sibling"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:25:53.455752Z",
                            "start": "2026-08-06T17:25:53.037356Z"
                        },
                        "id": "0242ac17-0010-f29a-44e6-00000000000a",
                        "name": "Install Ansible collection siblings"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "2",
    "phase": "pre",
    "playbook": "github.com/vexxhost/ansible-collection-kubernetes/test-playbooks/molecule/pre.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:26:04.498028Z",
                    "start": "2026-08-06T17:25:57.936393Z"
                },
                "id": "0242ac17-0010-9626-e28a-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.apt",
                            "cache_update_time": 1786037159,
                            "cache_updated": false,
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "only_upgrade": false,
                                    "package": null,
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": true,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            }
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:02.520304Z",
                            "start": "2026-08-06T17:25:57.947816Z"
                        },
                        "id": "0242ac17-0010-9626-e28a-000000000004",
                        "name": "Update apt cache"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.service",
                            "changed": false,
                            "false_condition": "ansible_os_family == \"RedHat\"",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:02.541258Z",
                            "start": "2026-08-06T17:26:02.525897Z"
                        },
                        "id": "0242ac17-0010-9626-e28a-000000000005",
                        "name": "Disable firewalld"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.package",
                            "cache_update_time": 1786037159,
                            "cache_updated": false,
                            "changed": true,
                            "diff": {},
                            "invocation": {
                                "module_args": {
                                    "allow_change_held_packages": false,
                                    "allow_downgrade": false,
                                    "allow_unauthenticated": false,
                                    "autoclean": false,
                                    "autoremove": false,
                                    "cache_valid_time": 0,
                                    "clean": false,
                                    "deb": null,
                                    "default_release": null,
                                    "dpkg_options": "force-confdef,force-confold",
                                    "fail_on_autoremove": false,
                                    "force": false,
                                    "force_apt_get": false,
                                    "install_recommends": null,
                                    "lock_timeout": 60,
                                    "name": "jq",
                                    "only_upgrade": false,
                                    "package": [
                                        "jq"
                                    ],
                                    "policy_rc_d": null,
                                    "purge": false,
                                    "state": "present",
                                    "update_cache": null,
                                    "update_cache_retries": 5,
                                    "update_cache_retry_max_delay": 12,
                                    "upgrade": null
                                }
                            },
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Reading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  libjq1 libonig5\nThe following NEW packages will be installed:\n  jq libjq1 libonig5\n0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.\nNeed to get 431 kB of archives.\nAfter this operation, 1265 kB of additional disk space will be used.\nGet:1 http://deb.debian.org/debian trixie/main amd64 libonig5 amd64 6.9.9-1+b1 [189 kB]\nGet:2 http://deb.debian.org/debian trixie/main amd64 libjq1 amd64 1.7.1-6+deb13u2 [164 kB]\nGet:3 http://deb.debian.org/debian trixie/main amd64 jq amd64 1.7.1-6+deb13u2 [77.8 kB]\nFetched 431 kB in 0s (6359 kB/s)\nSelecting previously unselected package libonig5:amd64.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 21212 files and directories currently installed.)\r\nPreparing to unpack .../libonig5_6.9.9-1+b1_amd64.deb ...\r\nUnpacking libonig5:amd64 (6.9.9-1+b1) ...\r\nSelecting previously unselected package libjq1:amd64.\r\nPreparing to unpack .../libjq1_1.7.1-6+deb13u2_amd64.deb ...\r\nUnpacking libjq1:amd64 (1.7.1-6+deb13u2) ...\r\nSelecting previously unselected package jq.\r\nPreparing to unpack .../jq_1.7.1-6+deb13u2_amd64.deb ...\r\nUnpacking jq (1.7.1-6+deb13u2) ...\r\nSetting up libonig5:amd64 (6.9.9-1+b1) ...\r\nSetting up libjq1:amd64 (1.7.1-6+deb13u2) ...\r\nSetting up jq (1.7.1-6+deb13u2) ...\r\nProcessing triggers for libc-bin (2.41-12+deb13u3) ...\r\n",
                            "stdout_lines": [
                                "Reading package lists...",
                                "Building dependency tree...",
                                "Reading state information...",
                                "The following additional packages will be installed:",
                                "  libjq1 libonig5",
                                "The following NEW packages will be installed:",
                                "  jq libjq1 libonig5",
                                "0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.",
                                "Need to get 431 kB of archives.",
                                "After this operation, 1265 kB of additional disk space will be used.",
                                "Get:1 http://deb.debian.org/debian trixie/main amd64 libonig5 amd64 6.9.9-1+b1 [189 kB]",
                                "Get:2 http://deb.debian.org/debian trixie/main amd64 libjq1 amd64 1.7.1-6+deb13u2 [164 kB]",
                                "Get:3 http://deb.debian.org/debian trixie/main amd64 jq amd64 1.7.1-6+deb13u2 [77.8 kB]",
                                "Fetched 431 kB in 0s (6359 kB/s)",
                                "Selecting previously unselected package libonig5:amd64.",
                                "(Reading database ... ",
                                "(Reading database ... 5%",
                                "(Reading database ... 10%",
                                "(Reading database ... 15%",
                                "(Reading database ... 20%",
                                "(Reading database ... 25%",
                                "(Reading database ... 30%",
                                "(Reading database ... 35%",
                                "(Reading database ... 40%",
                                "(Reading database ... 45%",
                                "(Reading database ... 50%",
                                "(Reading database ... 55%",
                                "(Reading database ... 60%",
                                "(Reading database ... 65%",
                                "(Reading database ... 70%",
                                "(Reading database ... 75%",
                                "(Reading database ... 80%",
                                "(Reading database ... 85%",
                                "(Reading database ... 90%",
                                "(Reading database ... 95%",
                                "(Reading database ... 100%",
                                "(Reading database ... 21212 files and directories currently installed.)",
                                "Preparing to unpack .../libonig5_6.9.9-1+b1_amd64.deb ...",
                                "Unpacking libonig5:amd64 (6.9.9-1+b1) ...",
                                "Selecting previously unselected package libjq1:amd64.",
                                "Preparing to unpack .../libjq1_1.7.1-6+deb13u2_amd64.deb ...",
                                "Unpacking libjq1:amd64 (1.7.1-6+deb13u2) ...",
                                "Selecting previously unselected package jq.",
                                "Preparing to unpack .../jq_1.7.1-6+deb13u2_amd64.deb ...",
                                "Unpacking jq (1.7.1-6+deb13u2) ...",
                                "Setting up libonig5:amd64 (6.9.9-1+b1) ...",
                                "Setting up libjq1:amd64 (1.7.1-6+deb13u2) ...",
                                "Setting up jq (1.7.1-6+deb13u2) ...",
                                "Processing triggers for libc-bin (2.41-12+deb13u3) ..."
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:04.498028Z",
                            "start": "2026-08-06T17:26:02.547358Z"
                        },
                        "id": "0242ac17-0010-9626-e28a-000000000006",
                        "name": "Install \"jq\" for log collection"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 1,
            "failures": 0,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 1,
            "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-08-06T17:32:44.199047Z",
                    "start": "2026-08-06T17:26:05.267483Z"
                },
                "id": "0242ac17-0010-b955-20d8-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.stat",
                            "changed": false,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "stat": {
                                        "atime": 1786037147.4053385,
                                        "attr_flags": "e",
                                        "attributes": [
                                            "extents"
                                        ],
                                        "block_size": 4096,
                                        "blocks": 8,
                                        "charset": "unknown",
                                        "ctime": 1786037147.42534,
                                        "dev": 65025,
                                        "device_type": 0,
                                        "executable": true,
                                        "exists": true,
                                        "gid": 1000,
                                        "gr_name": "zuul",
                                        "inode": 519191,
                                        "isblk": false,
                                        "ischr": false,
                                        "isdir": true,
                                        "isfifo": false,
                                        "isgid": false,
                                        "islnk": false,
                                        "isreg": false,
                                        "issock": false,
                                        "isuid": false,
                                        "mimetype": "unknown",
                                        "mode": "0755",
                                        "mtime": 1786037130.115877,
                                        "nlink": 14,
                                        "path": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                        "pw_name": "zuul",
                                        "readable": true,
                                        "rgrp": true,
                                        "roth": true,
                                        "rusr": true,
                                        "size": 4096,
                                        "uid": 1000,
                                        "version": "652300616",
                                        "wgrp": false,
                                        "woth": false,
                                        "writeable": true,
                                        "wusr": true,
                                        "xgrp": true,
                                        "xoth": true,
                                        "xusr": true
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "checksum_algorithm": "sha1",
                                            "follow": true,
                                            "get_attributes": true,
                                            "get_checksum": true,
                                            "get_mime": true,
                                            "path": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory"
                                        }
                                    },
                                    "item": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory",
                                    "stat": {
                                        "exists": false
                                    }
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:06.018245Z",
                            "start": "2026-08-06T17:26:05.277789Z"
                        },
                        "id": "0242ac17-0010-b955-20d8-000000000004",
                        "name": "Check inventory directories"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "checksum": "b201ce2793233b0d2b580fede688a186005cca22",
                                    "dest": "src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml",
                                    "diff": [],
                                    "failed": false,
                                    "gid": 1000,
                                    "group": "zuul",
                                    "invocation": {
                                        "module_args": {
                                            "_original_basename": "inventory.yaml",
                                            "attributes": null,
                                            "backup": false,
                                            "checksum": "b201ce2793233b0d2b580fede688a186005cca22",
                                            "content": null,
                                            "dest": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                            "directory_mode": null,
                                            "follow": false,
                                            "force": true,
                                            "group": null,
                                            "local_follow": null,
                                            "mode": "0644",
                                            "owner": null,
                                            "remote_src": null,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1786037166.0918376-9-82157644924055/source",
                                            "unsafe_writes": false,
                                            "validate": null
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                        "stat": {
                                            "atime": 1786037147.4053385,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1786037147.42534,
                                            "dev": 65025,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 519191,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1786037130.115877,
                                            "nlink": 14,
                                            "path": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "652300616",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "md5sum": "90c27b8cba3f107294a2bf36594ce461",
                                    "mode": "0644",
                                    "owner": "zuul",
                                    "size": 15519,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1786037166.0918376-9-82157644924055/source",
                                    "state": "file",
                                    "uid": 1000
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:06.908143Z",
                            "start": "2026-08-06T17:26:06.024586Z"
                        },
                        "id": "0242ac17-0010-b955-20d8-000000000005",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "item",
                                    "changed": true,
                                    "failed": false,
                                    "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
                                        }
                                    },
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                        "stat": {
                                            "atime": 1786037147.4053385,
                                            "attr_flags": "e",
                                            "attributes": [
                                                "extents"
                                            ],
                                            "block_size": 4096,
                                            "blocks": 8,
                                            "charset": "unknown",
                                            "ctime": 1786037147.42534,
                                            "dev": 65025,
                                            "device_type": 0,
                                            "executable": true,
                                            "exists": true,
                                            "gid": 1000,
                                            "gr_name": "zuul",
                                            "inode": 519191,
                                            "isblk": false,
                                            "ischr": false,
                                            "isdir": true,
                                            "isfifo": false,
                                            "isgid": false,
                                            "islnk": false,
                                            "isreg": false,
                                            "issock": false,
                                            "isuid": false,
                                            "mimetype": "unknown",
                                            "mode": "0755",
                                            "mtime": 1786037130.115877,
                                            "nlink": 14,
                                            "path": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                            "pw_name": "zuul",
                                            "readable": true,
                                            "rgrp": true,
                                            "roth": true,
                                            "rusr": true,
                                            "size": 4096,
                                            "uid": 1000,
                                            "version": "652300616",
                                            "wgrp": false,
                                            "woth": false,
                                            "writeable": true,
                                            "wusr": true,
                                            "xgrp": true,
                                            "xoth": true,
                                            "xusr": true
                                        }
                                    },
                                    "msg": "1 replacements made",
                                    "rc": 0
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes/molecule/bgp/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                },
                                {
                                    "ansible_loop_var": "item",
                                    "changed": false,
                                    "false_condition": "item.stat.isdir | default(false)",
                                    "item": {
                                        "ansible_loop_var": "item",
                                        "changed": false,
                                        "failed": false,
                                        "invocation": {
                                            "module_args": {
                                                "checksum_algorithm": "sha1",
                                                "follow": true,
                                                "get_attributes": true,
                                                "get_checksum": true,
                                                "get_mime": true,
                                                "path": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory"
                                            }
                                        },
                                        "item": "src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/inventory",
                                        "stat": {
                                            "exists": false
                                        }
                                    },
                                    "skip_reason": "Conditional result was False",
                                    "skipped": true
                                }
                            ]
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:26:07.345447Z",
                            "start": "2026-08-06T17:26:06.913185Z"
                        },
                        "id": "0242ac17-0010-b955-20d8-000000000006",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "bgp"
                            ],
                            "delta": "0:06:36.228265",
                            "end": "2026-08-06 17:32:43.970650",
                            "failed": true,
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s bgp",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/ansible-collection-kubernetes",
                                    "creates": null,
                                    "executable": null,
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-b955-20d8-000000000007-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "non-zero return code",
                            "rc": 2,
                            "start": "2026-08-06 17:26:07.742385",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Using CPython 3.13.5 interpreter at: /usr/bin/python3\nCreating virtual environment at: .venv\nDownloading ansible-core (2.3MiB)\nDownloading pygments (1.2MiB)\nDownloading cryptography (4.3MiB)\n Downloading cryptography\n Downloading pygments\n Downloading ansible-core\nInstalled 36 packages in 45ms\nINFO     Collection 'vexxhost.kubernetes' detected.\nINFO     Scenarios will be used from 'extensions/molecule'\nCRITICAL 'extensions/molecule/default/molecule.yml' glob failed.  Exiting.\nINFO     default scenario not found, disabling shared state.\nINFO     [bgp > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [bgp > prerun] Performing prerun with role_name_check=0...\nINFO     [bgp > dependency] Executing\nWARNING  [bgp > dependency] Missing roles requirements file: requirements.yml\nWARNING  [bgp > dependency] Missing collections requirements file: collections.yml\nWARNING  [bgp > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [bgp > cleanup] Executing\nWARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > destroy] Executing\nWARNING  [bgp > destroy] Skipping, '--destroy=never' requested.\nINFO     [bgp > destroy] Executed: Successful\nINFO     [bgp > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml\nINFO     [bgp > syntax] Executed: Successful\nINFO     [bgp > create] Executing\nWARNING  [bgp > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [bgp > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 06 August 2026  17:26:31 +0000 (0:00:00.029)       0:00:00.029 *******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nThursday 06 August 2026  17:26:32 +0000 (0:00:01.191)       0:00:01.221 *******\nok: [controller]\n\nPLAY [Prepare BGP] *************************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 06 August 2026  17:26:34 +0000 (0:00:01.252)       0:00:02.474 *******\nok: [controller]\n\nTASK [Enable IP forwarding] ****************************************************\nThursday 06 August 2026  17:26:34 +0000 (0:00:00.777)       0:00:03.251 *******\nchanged: [controller]\n\nTASK [Add FRR repository] ******************************************************\nThursday 06 August 2026  17:26:35 +0000 (0:00:00.387)       0:00:03.639 *******\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [controller]\n\nTASK [Install frr packages] ****************************************************\nThursday 06 August 2026  17:26:38 +0000 (0:00:03.653)       0:00:07.292 *******\nchanged: [controller]\n\nTASK [Ensure bgpd is enabled] **************************************************\nThursday 06 August 2026  17:26:47 +0000 (0:00:08.250)       0:00:15.542 *******\nchanged: [controller]\n\nTASK [Update FRR configuration] ************************************************\nThursday 06 August 2026  17:26:47 +0000 (0:00:00.392)       0:00:15.935 *******\nchanged: [controller]\n\nTASK [Restart service frr] *****************************************************\nThursday 06 August 2026  17:26:48 +0000 (0:00:00.921)       0:00:16.856 *******\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=9    changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nThursday 06 August 2026  17:26:54 +0000 (0:00:06.248)       0:00:23.105 *******\n===============================================================================\nInstall frr packages ---------------------------------------------------- 8.25s\nRestart service frr ----------------------------------------------------- 6.25s\nAdd FRR repository ------------------------------------------------------ 3.65s\nInstall Debian packages ------------------------------------------------- 1.25s\nGathering Facts --------------------------------------------------------- 1.19s\nUpdate FRR configuration ------------------------------------------------ 0.92s\nGathering Facts --------------------------------------------------------- 0.78s\nEnsure bgpd is enabled -------------------------------------------------- 0.39s\nEnable IP forwarding ---------------------------------------------------- 0.39s\nINFO     [bgp > prepare] Executed: Successful\nINFO     [bgp > converge] Executing\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 06 August 2026  17:26:56 +0000 (0:00:00.018)       0:00:00.018 *******\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nThursday 06 August 2026  17:26:57 +0000 (0:00:01.059)       0:00:01.077 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nThursday 06 August 2026  17:26:57 +0000 (0:00:00.421)       0:00:01.499 *******\nok: [controller] => (item=/etc/keepalived/keepalived.conf)\nok: [controller] => (item=/etc/keepalived/check_apiserver.sh)\nok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [controller] => (item=/etc/haproxy/haproxy.cfg)\nok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nThursday 06 August 2026  17:26:59 +0000 (0:00:01.405)       0:00:02.904 *******\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}\n...ignoring\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nThursday 06 August 2026  17:26:59 +0000 (0:00:00.895)       0:00:03.800 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nThursday 06 August 2026  17:27:00 +0000 (0:00:00.394)       0:00:04.194 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nThursday 06 August 2026  17:27:00 +0000 (0:00:00.289)       0:00:04.483 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nThursday 06 August 2026  17:27:00 +0000 (0:00:00.040)       0:00:04.524 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nThursday 06 August 2026  17:27:00 +0000 (0:00:00.044)       0:00:04.569 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nThursday 06 August 2026  17:27:01 +0000 (0:00:00.869)       0:00:05.439 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nThursday 06 August 2026  17:27:01 +0000 (0:00:00.289)       0:00:05.728 *******\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nThursday 06 August 2026  17:27:01 +0000 (0:00:00.052)       0:00:05.781 *******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:04 +0000 (0:00:02.811)       0:00:08.592 *******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 06 August 2026  17:27:05 +0000 (0:00:00.335)       0:00:08.927 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nThursday 06 August 2026  17:27:05 +0000 (0:00:00.032)       0:00:08.960 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:05 +0000 (0:00:00.287)       0:00:09.247 *******\nok: [controller] => {\n    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 06 August 2026  17:27:05 +0000 (0:00:00.089)       0:00:09.337 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:06 +0000 (0:00:00.812)       0:00:10.149 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:06 +0000 (0:00:00.042)       0:00:10.192 *******\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nThursday 06 August 2026  17:27:06 +0000 (0:00:00.295)       0:00:10.487 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:07 +0000 (0:00:00.974)       0:00:11.462 *******\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.2/containerd-2.3.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 06 August 2026  17:27:07 +0000 (0:00:00.076)       0:00:11.538 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:08 +0000 (0:00:00.935)       0:00:12.474 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 06 August 2026  17:27:11 +0000 (0:00:02.971)       0:00:15.445 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 06 August 2026  17:27:11 +0000 (0:00:00.036)       0:00:15.482 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 06 August 2026  17:27:11 +0000 (0:00:00.033)       0:00:15.515 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 06 August 2026  17:27:11 +0000 (0:00:00.036)       0:00:15.551 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 06 August 2026  17:27:16 +0000 (0:00:05.028)       0:00:20.580 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 06 August 2026  17:27:17 +0000 (0:00:00.680)       0:00:21.261 *******\nchanged: [controller] => (item={'path': '/etc/containerd'})\nchanged: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nThursday 06 August 2026  17:27:18 +0000 (0:00:01.370)       0:00:22.632 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 06 August 2026  17:27:19 +0000 (0:00:00.808)       0:00:23.441 *******\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nThursday 06 August 2026  17:27:19 +0000 (0:00:00.007)       0:00:23.449 *******\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nThursday 06 August 2026  17:27:20 +0000 (0:00:00.851)       0:00:24.300 *******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 06 August 2026  17:27:22 +0000 (0:00:01.665)       0:00:25.966 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nThursday 06 August 2026  17:27:22 +0000 (0:00:00.801)       0:00:26.767 *******\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000188176'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 np0000188176's Python /usr/bin/python3.13. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.660)       0:00:27.428 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.040)       0:00:27.468 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.038)       0:00:27.506 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.038)       0:00:27.545 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.045)       0:00:27.591 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:23 +0000 (0:00:00.043)       0:00:27.634 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:24 +0000 (0:00:00.287)       0:00:27.922 *******\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] *******************\nThursday 06 August 2026  17:27:24 +0000 (0:00:00.045)       0:00:27.967 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:39 +0000 (0:00:15.706)       0:00:43.674 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:39 +0000 (0:00:00.042)       0:00:43.717 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:40 +0000 (0:00:00.294)       0:00:44.011 *******\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] *******************\nThursday 06 August 2026  17:27:40 +0000 (0:00:00.047)       0:00:44.058 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:43 +0000 (0:00:03.026)       0:00:47.085 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nThursday 06 August 2026  17:27:43 +0000 (0:00:00.053)       0:00:47.139 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nThursday 06 August 2026  17:27:43 +0000 (0:00:00.037)       0:00:47.176 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nThursday 06 August 2026  17:27:43 +0000 (0:00:00.032)       0:00:47.209 *******\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nThursday 06 August 2026  17:27:43 +0000 (0:00:00.038)       0:00:47.247 *******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nThursday 06 August 2026  17:27:44 +0000 (0:00:00.824)       0:00:48.071 *******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nThursday 06 August 2026  17:27:44 +0000 (0:00:00.670)       0:00:48.742 *******\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nThursday 06 August 2026  17:27:46 +0000 (0:00:01.345)       0:00:50.087 *******\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nThursday 06 August 2026  17:27:47 +0000 (0:00:00.767)       0:00:50.854 *******\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nThursday 06 August 2026  17:27:47 +0000 (0:00:00.004)       0:00:50.859 *******\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:47 +0000 (0:00:00.479)       0:00:51.338 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:47 +0000 (0:00:00.303)       0:00:51.642 *******\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.36.0/crictl-v1.36.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 06 August 2026  17:27:47 +0000 (0:00:00.077)       0:00:51.720 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:48 +0000 (0:00:00.814)       0:00:52.535 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:50 +0000 (0:00:01.652)       0:00:54.187 *******\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.36.0/critest-v1.36.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 06 August 2026  17:27:50 +0000 (0:00:00.066)       0:00:54.253 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:51 +0000 (0:00:00.810)       0:00:55.064 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nThursday 06 August 2026  17:27:52 +0000 (0:00:01.641)       0:00:56.705 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nThursday 06 August 2026  17:27:53 +0000 (0:00:00.651)       0:00:57.356 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:27:53 +0000 (0:00:00.289)       0:00:57.645 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:27:54 +0000 (0:00:00.295)       0:00:57.941 *******\nok: [controller] => {\n    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.9.1/cni-plugins-linux-amd64-v1.9.1.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nThursday 06 August 2026  17:27:54 +0000 (0:00:00.068)       0:00:58.009 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:27:55 +0000 (0:00:00.986)       0:00:58.996 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nThursday 06 August 2026  17:27:59 +0000 (0:00:03.910)       0:01:02.906 *******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nThursday 06 August 2026  17:27:59 +0000 (0:00:00.052)       0:01:02.959 *******\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nThursday 06 August 2026  17:27:59 +0000 (0:00:00.786)       0:01:03.745 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nThursday 06 August 2026  17:28:00 +0000 (0:00:00.406)       0:01:04.152 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nThursday 06 August 2026  17:28:00 +0000 (0:00:00.660)       0:01:04.813 *******\nchanged: [controller] => (item=br_netfilter)\nok: [controller] => (item=ip_tables)\nchanged: [controller] => (item=ip6_tables)\nchanged: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nThursday 06 August 2026  17:28:02 +0000 (0:00:01.394)       0:01:06.207 *******\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nThursday 06 August 2026  17:28:02 +0000 (0:00:00.298)       0:01:06.505 *******\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] *******************\nThursday 06 August 2026  17:28:02 +0000 (0:00:00.049)       0:01:06.554 *******\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nThursday 06 August 2026  17:28:04 +0000 (0:00:01.314)       0:01:07.868 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nThursday 06 August 2026  17:28:04 +0000 (0:00:00.040)       0:01:07.909 *******\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nThursday 06 August 2026  17:28:04 +0000 (0:00:00.053)       0:01:07.962 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nThursday 06 August 2026  17:28:04 +0000 (0:00:00.028)       0:01:07.991 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nThursday 06 August 2026  17:28:06 +0000 (0:00:02.505)       0:01:10.496 *******\nok: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv6.conf.default.forwarding', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nchanged: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nThursday 06 August 2026  17:28:08 +0000 (0:00:02.233)       0:01:12.730 *******\nchanged: [controller] => (item=/etc/systemd/system/kubelet.service.d)\nok: [controller] => (item=/etc/kubernetes)\nok: [controller] => (item=/etc/kubernetes/manifests)\n\nTASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********\nThursday 06 August 2026  17:28:09 +0000 (0:00:00.823)       0:01:13.554 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nThursday 06 August 2026  17:28:10 +0000 (0:00:00.697)       0:01:14.252 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nThursday 06 August 2026  17:28:11 +0000 (0:00:00.664)       0:01:14.916 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nThursday 06 August 2026  17:28:11 +0000 (0:00:00.420)       0:01:15.337 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nThursday 06 August 2026  17:28:11 +0000 (0:00:00.040)       0:01:15.377 *******\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nThursday 06 August 2026  17:28:12 +0000 (0:00:00.658)       0:01:16.036 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nThursday 06 August 2026  17:28:12 +0000 (0:00:00.657)       0:01:16.694 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nThursday 06 August 2026  17:28:13 +0000 (0:00:00.763)       0:01:17.457 *******\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nThursday 06 August 2026  17:28:13 +0000 (0:00:00.007)       0:01:17.465 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nThursday 06 August 2026  17:28:15 +0000 (0:00:01.758)       0:01:19.224 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nThursday 06 August 2026  17:28:16 +0000 (0:00:00.818)       0:01:20.042 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nThursday 06 August 2026  17:28:17 +0000 (0:00:00.832)       0:01:20.874 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nThursday 06 August 2026  17:28:17 +0000 (0:00:00.812)       0:01:21.687 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nThursday 06 August 2026  17:28:18 +0000 (0:00:00.404)       0:01:22.091 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nThursday 06 August 2026  17:28:18 +0000 (0:00:00.497)       0:01:22.589 *******\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nThursday 06 August 2026  17:28:18 +0000 (0:00:00.085)       0:01:22.674 *******\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***\nThursday 06 August 2026  17:28:18 +0000 (0:00:00.082)       0:01:22.757 *******\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nThursday 06 August 2026  17:28:19 +0000 (0:00:00.307)       0:01:23.065 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nThursday 06 August 2026  17:28:19 +0000 (0:00:00.045)       0:01:23.110 *******\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nThursday 06 August 2026  17:28:19 +0000 (0:00:00.045)       0:01:23.156 *******\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nThursday 06 August 2026  17:28:19 +0000 (0:00:00.040)       0:01:23.196 *******\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.661)       0:01:23.858 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:23.890 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.027)       0:01:23.917 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.033)       0:01:23.950 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:23.982 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:24.013 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.026)       0:01:24.039 *******\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nThursday 06 August 2026  17:28:20 +0000 (0:00:00.032)       0:01:24.072 *******\n[ERROR]: Task failed: Module failed: non-zero return code\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml:91:3\n\n89         - (kubernetes_custom_front_proxy_ca_cert is defined) and (kubernetes_custom_front_proxy_ca_cert|length > 0)\n90\n91 - name: Initialize cluster\n     ^ column 3\n\nfatal: [controller]: FAILED! => {\"changed\": true, \"cmd\": \"kubeadm init --config /etc/kubernetes/kubeadm.yaml --upload-certs  --ignore-preflight-errors=DirAvailable--etc-kubernetes-manifests\\n\", \"delta\": \"0:04:23.221140\", \"end\": \"2026-08-06 17:32:43.705722\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2026-08-06 17:28:20.484582\", \"stderr\": \"W0806 17:28:20.524804    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"ClusterConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525237    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"InitConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525447    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"JoinConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525562    4573 initconfiguration.go:361] [config] WARNING: Ignored configuration document with GroupVersionKind kubeadm.k8s.io/v1beta3, Kind=JoinConfiguration\\nerror: error execution phase wait-control-plane: failed while waiting for the control plane to start: kube-apiserver check failed at https://199.204.45.35:6443/livez: Get \\\"https://199.204.45.35:6443/livez?timeout=10s\\\": dial tcp 199.204.45.35:6443: connect: connection refused\\nTo see the stack trace of this error execute with --v=5 or higher\", \"stderr_lines\": [\"W0806 17:28:20.524804    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"ClusterConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525237    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"InitConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525447    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"JoinConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525562    4573 initconfiguration.go:361] [config] WARNING: Ignored configuration document with GroupVersionKind kubeadm.k8s.io/v1beta3, Kind=JoinConfiguration\", \"error: error execution phase wait-control-plane: failed while waiting for the control plane to start: kube-apiserver check failed at https://199.204.45.35:6443/livez: Get \\\"https://199.204.45.35:6443/livez?timeout=10s\\\": dial tcp 199.204.45.35:6443: connect: connection refused\", \"To see the stack trace of this error execute with --v=5 or higher\"], \"stdout\": \"[init] Using Kubernetes version: v1.34.0\\n[preflight] Running pre-flight checks\\n[preflight] Pulling images required for setting up a Kubernetes cluster\\n[preflight] This might take a minute or two, depending on the speed of your internet connection\\n[preflight] You can also perform this action beforehand using 'kubeadm config images pull'\\n[certs] Using certificateDir folder \\\"/etc/kubernetes/pki\\\"\\n[certs] Generating \\\"ca\\\" certificate and key\\n[certs] Generating \\\"apiserver\\\" certificate and key\\n[certs] apiserver serving cert is signed for DNS names [controller kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [fd40:10:100::1 199.204.45.35]\\n[certs] Generating \\\"apiserver-kubelet-client\\\" certificate and key\\n[certs] Generating \\\"front-proxy-ca\\\" certificate and key\\n[certs] Generating \\\"front-proxy-client\\\" certificate and key\\n[certs] Generating \\\"etcd/ca\\\" certificate and key\\n[certs] Generating \\\"etcd/server\\\" certificate and key\\n[certs] etcd/server serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\\n[certs] Generating \\\"etcd/peer\\\" certificate and key\\n[certs] etcd/peer serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\\n[certs] Generating \\\"etcd/healthcheck-client\\\" certificate and key\\n[certs] Generating \\\"apiserver-etcd-client\\\" certificate and key\\n[certs] Generating \\\"sa\\\" key and public key\\n[kubeconfig] Using kubeconfig folder \\\"/etc/kubernetes\\\"\\n[kubeconfig] Writing \\\"admin.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"super-admin.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"kubelet.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"controller-manager.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"scheduler.conf\\\" kubeconfig file\\n[etcd] Creating static Pod manifest for local etcd in \\\"/etc/kubernetes/manifests\\\"\\n[control-plane] Using manifest folder \\\"/etc/kubernetes/manifests\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-apiserver\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-controller-manager\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-scheduler\\\"\\n[kubelet-start] Writing kubelet environment file with flags to file \\\"/var/lib/kubelet/kubeadm-flags.env\\\"\\n[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/instance-config.yaml\\\"\\n[patches] Applied patch of type \\\"application/strategic-merge-patch+json\\\" to target \\\"kubeletconfiguration\\\"\\n[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/config.yaml\\\"\\n[kubelet-start] Starting the kubelet\\n[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \\\"/etc/kubernetes/manifests\\\"\\n[kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\\n[kubelet-check] The kubelet is healthy after 1.001815715s\\n[control-plane-check] Waiting for healthy control plane components. This can take up to 4m0s\\n[control-plane-check] Checking kube-apiserver at https://199.204.45.35:6443/livez\\n[control-plane-check] Checking kube-controller-manager at https://0.0.0.0:10257/healthz\\n[control-plane-check] Checking kube-scheduler at https://0.0.0.0:10259/livez\\n[control-plane-check] kube-controller-manager is healthy after 2.665604268s\\n[control-plane-check] kube-scheduler is healthy after 3.152231346s\\n[control-plane-check] kube-apiserver is not healthy after 4m0.00030081s\\n\\nA control plane component may have crashed or exited when started by the container runtime.\\nTo troubleshoot, list all containers using your preferred container runtimes CLI.\\nHere is one example how you may list all running Kubernetes containers by using crictl:\\n\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock ps -a | grep kube | grep -v pause'\\n\\tOnce you have found the failing container, you can inspect its logs with:\\n\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock logs CONTAINERID'\", \"stdout_lines\": [\"[init] Using Kubernetes version: v1.34.0\", \"[preflight] Running pre-flight checks\", \"[preflight] Pulling images required for setting up a Kubernetes cluster\", \"[preflight] This might take a minute or two, depending on the speed of your internet connection\", \"[preflight] You can also perform this action beforehand using 'kubeadm config images pull'\", \"[certs] Using certificateDir folder \\\"/etc/kubernetes/pki\\\"\", \"[certs] Generating \\\"ca\\\" certificate and key\", \"[certs] Generating \\\"apiserver\\\" certificate and key\", \"[certs] apiserver serving cert is signed for DNS names [controller kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [fd40:10:100::1 199.204.45.35]\", \"[certs] Generating \\\"apiserver-kubelet-client\\\" certificate and key\", \"[certs] Generating \\\"front-proxy-ca\\\" certificate and key\", \"[certs] Generating \\\"front-proxy-client\\\" certificate and key\", \"[certs] Generating \\\"etcd/ca\\\" certificate and key\", \"[certs] Generating \\\"etcd/server\\\" certificate and key\", \"[certs] etcd/server serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\", \"[certs] Generating \\\"etcd/peer\\\" certificate and key\", \"[certs] etcd/peer serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\", \"[certs] Generating \\\"etcd/healthcheck-client\\\" certificate and key\", \"[certs] Generating \\\"apiserver-etcd-client\\\" certificate and key\", \"[certs] Generating \\\"sa\\\" key and public key\", \"[kubeconfig] Using kubeconfig folder \\\"/etc/kubernetes\\\"\", \"[kubeconfig] Writing \\\"admin.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"super-admin.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"kubelet.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"controller-manager.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"scheduler.conf\\\" kubeconfig file\", \"[etcd] Creating static Pod manifest for local etcd in \\\"/etc/kubernetes/manifests\\\"\", \"[control-plane] Using manifest folder \\\"/etc/kubernetes/manifests\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-apiserver\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-controller-manager\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-scheduler\\\"\", \"[kubelet-start] Writing kubelet environment file with flags to file \\\"/var/lib/kubelet/kubeadm-flags.env\\\"\", \"[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/instance-config.yaml\\\"\", \"[patches] Applied patch of type \\\"application/strategic-merge-patch+json\\\" to target \\\"kubeletconfiguration\\\"\", \"[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/config.yaml\\\"\", \"[kubelet-start] Starting the kubelet\", \"[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \\\"/etc/kubernetes/manifests\\\"\", \"[kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\", \"[kubelet-check] The kubelet is healthy after 1.001815715s\", \"[control-plane-check] Waiting for healthy control plane components. This can take up to 4m0s\", \"[control-plane-check] Checking kube-apiserver at https://199.204.45.35:6443/livez\", \"[control-plane-check] Checking kube-controller-manager at https://0.0.0.0:10257/healthz\", \"[control-plane-check] Checking kube-scheduler at https://0.0.0.0:10259/livez\", \"[control-plane-check] kube-controller-manager is healthy after 2.665604268s\", \"[control-plane-check] kube-scheduler is healthy after 3.152231346s\", \"[control-plane-check] kube-apiserver is not healthy after 4m0.00030081s\", \"\", \"A control plane component may have crashed or exited when started by the container runtime.\", \"To troubleshoot, list all containers using your preferred container runtimes CLI.\", \"Here is one example how you may list all running Kubernetes containers by using crictl:\", \"\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock ps -a | grep kube | grep -v pause'\", \"\\tOnce you have found the failing container, you can inspect its logs with:\", \"\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock logs CONTAINERID'\"]}\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=82   changed=36   unreachable=0    failed=1    skipped=26   rescued=0    ignored=2\n\n\nTASKS RECAP ********************************************************************\nThursday 06 August 2026  17:32:43 +0000 (0:04:23.508)       0:05:47.580 *******\n===============================================================================\nvexxhost.kubernetes.kubernetes : Initialize cluster ------------------- 263.51s\nvexxhost.containers.download_artifact : Download item ------------------ 15.71s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 5.03s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.91s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.42s\nvexxhost.containers.download_artifact : Download item ------------------- 3.03s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.97s\nGathering Facts --------------------------------------------------------- 2.81s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 2.51s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.23s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.65s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.64s\nvexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.41s\nvexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.39s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.37s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.35s\nvexxhost.containers.download_artifact : Download item ------------------- 1.31s\nGathering Facts --------------------------------------------------------- 1.06s\nvexxhost.containers.download_artifact : Download item ------------------- 0.99s\nvexxhost.containers.package : Update state for tar ---------------------- 0.97s\nCRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.Bs5j.bgp/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml\nERROR    [bgp > converge] \u001b[31mExecuted: Failed\u001b[0m\nERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.Bs5j.bgp/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml",
                            "stdout_lines": [
                                "Using CPython 3.13.5 interpreter at: /usr/bin/python3",
                                "Creating virtual environment at: .venv",
                                "Downloading ansible-core (2.3MiB)",
                                "Downloading pygments (1.2MiB)",
                                "Downloading cryptography (4.3MiB)",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading ansible-core",
                                "Installed 36 packages in 45ms",
                                "INFO     Collection 'vexxhost.kubernetes' detected.",
                                "INFO     Scenarios will be used from 'extensions/molecule'",
                                "CRITICAL 'extensions/molecule/default/molecule.yml' glob failed.  Exiting.",
                                "INFO     default scenario not found, disabling shared state.",
                                "INFO     [bgp > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [bgp > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [bgp > dependency] Executing",
                                "WARNING  [bgp > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [bgp > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [bgp > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [bgp > cleanup] Executing",
                                "WARNING  [bgp > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > destroy] Executing",
                                "WARNING  [bgp > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [bgp > destroy] Executed: Successful",
                                "INFO     [bgp > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml",
                                "INFO     [bgp > syntax] Executed: Successful",
                                "INFO     [bgp > create] Executing",
                                "WARNING  [bgp > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [bgp > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 06 August 2026  17:26:31 +0000 (0:00:00.029)       0:00:00.029 *******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Thursday 06 August 2026  17:26:32 +0000 (0:00:01.191)       0:00:01.221 *******",
                                "ok: [controller]",
                                "",
                                "PLAY [Prepare BGP] *************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 06 August 2026  17:26:34 +0000 (0:00:01.252)       0:00:02.474 *******",
                                "ok: [controller]",
                                "",
                                "TASK [Enable IP forwarding] ****************************************************",
                                "Thursday 06 August 2026  17:26:34 +0000 (0:00:00.777)       0:00:03.251 *******",
                                "changed: [controller]",
                                "",
                                "TASK [Add FRR repository] ******************************************************",
                                "Thursday 06 August 2026  17:26:35 +0000 (0:00:00.387)       0:00:03.639 *******",
                                "[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually",
                                "changed: [controller]",
                                "",
                                "TASK [Install frr packages] ****************************************************",
                                "Thursday 06 August 2026  17:26:38 +0000 (0:00:03.653)       0:00:07.292 *******",
                                "changed: [controller]",
                                "",
                                "TASK [Ensure bgpd is enabled] **************************************************",
                                "Thursday 06 August 2026  17:26:47 +0000 (0:00:08.250)       0:00:15.542 *******",
                                "changed: [controller]",
                                "",
                                "TASK [Update FRR configuration] ************************************************",
                                "Thursday 06 August 2026  17:26:47 +0000 (0:00:00.392)       0:00:15.935 *******",
                                "changed: [controller]",
                                "",
                                "TASK [Restart service frr] *****************************************************",
                                "Thursday 06 August 2026  17:26:48 +0000 (0:00:00.921)       0:00:16.856 *******",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=9    changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 06 August 2026  17:26:54 +0000 (0:00:06.248)       0:00:23.105 *******",
                                "===============================================================================",
                                "Install frr packages ---------------------------------------------------- 8.25s",
                                "Restart service frr ----------------------------------------------------- 6.25s",
                                "Add FRR repository ------------------------------------------------------ 3.65s",
                                "Install Debian packages ------------------------------------------------- 1.25s",
                                "Gathering Facts --------------------------------------------------------- 1.19s",
                                "Update FRR configuration ------------------------------------------------ 0.92s",
                                "Gathering Facts --------------------------------------------------------- 0.78s",
                                "Ensure bgpd is enabled -------------------------------------------------- 0.39s",
                                "Enable IP forwarding ---------------------------------------------------- 0.39s",
                                "INFO     [bgp > prepare] Executed: Successful",
                                "INFO     [bgp > converge] Executing",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 06 August 2026  17:26:56 +0000 (0:00:00.018)       0:00:00.018 *******",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.13', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Thursday 06 August 2026  17:26:57 +0000 (0:00:01.059)       0:00:01.077 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Thursday 06 August 2026  17:26:57 +0000 (0:00:00.421)       0:00:01.499 *******",
                                "ok: [controller] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [controller] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [controller] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Thursday 06 August 2026  17:26:59 +0000 (0:00:01.405)       0:00:02.904 *******",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Thursday 06 August 2026  17:26:59 +0000 (0:00:00.895)       0:00:03.800 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Thursday 06 August 2026  17:27:00 +0000 (0:00:00.394)       0:00:04.194 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Thursday 06 August 2026  17:27:00 +0000 (0:00:00.289)       0:00:04.483 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Thursday 06 August 2026  17:27:00 +0000 (0:00:00.040)       0:00:04.524 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Thursday 06 August 2026  17:27:00 +0000 (0:00:00.044)       0:00:04.569 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Thursday 06 August 2026  17:27:01 +0000 (0:00:00.869)       0:00:05.439 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Thursday 06 August 2026  17:27:01 +0000 (0:00:00.289)       0:00:05.728 *******",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Thursday 06 August 2026  17:27:01 +0000 (0:00:00.052)       0:00:05.781 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:04 +0000 (0:00:02.811)       0:00:08.592 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 06 August 2026  17:27:05 +0000 (0:00:00.335)       0:00:08.927 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Thursday 06 August 2026  17:27:05 +0000 (0:00:00.032)       0:00:08.960 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:05 +0000 (0:00:00.287)       0:00:09.247 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:05 +0000 (0:00:00.089)       0:00:09.337 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:06 +0000 (0:00:00.812)       0:00:10.149 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:06 +0000 (0:00:00.042)       0:00:10.192 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Thursday 06 August 2026  17:27:06 +0000 (0:00:00.295)       0:00:10.487 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:07 +0000 (0:00:00.974)       0:00:11.462 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.3.2/containerd-2.3.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:07 +0000 (0:00:00.076)       0:00:11.538 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:08 +0000 (0:00:00.935)       0:00:12.474 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 06 August 2026  17:27:11 +0000 (0:00:02.971)       0:00:15.445 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 06 August 2026  17:27:11 +0000 (0:00:00.036)       0:00:15.482 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 06 August 2026  17:27:11 +0000 (0:00:00.033)       0:00:15.515 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 06 August 2026  17:27:11 +0000 (0:00:00.036)       0:00:15.551 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 06 August 2026  17:27:16 +0000 (0:00:05.028)       0:00:20.580 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 06 August 2026  17:27:17 +0000 (0:00:00.680)       0:00:21.261 *******",
                                "changed: [controller] => (item={'path': '/etc/containerd'})",
                                "changed: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Thursday 06 August 2026  17:27:18 +0000 (0:00:01.370)       0:00:22.632 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 06 August 2026  17:27:19 +0000 (0:00:00.808)       0:00:23.441 *******",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Thursday 06 August 2026  17:27:19 +0000 (0:00:00.007)       0:00:23.449 *******",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Thursday 06 August 2026  17:27:20 +0000 (0:00:00.851)       0:00:24.300 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 06 August 2026  17:27:22 +0000 (0:00:01.665)       0:00:25.966 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Thursday 06 August 2026  17:27:22 +0000 (0:00:00.801)       0:00:26.767 *******",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000188176'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 np0000188176's Python /usr/bin/python3.13. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.660)       0:00:27.428 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.040)       0:00:27.468 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.038)       0:00:27.506 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.038)       0:00:27.545 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.045)       0:00:27.591 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:23 +0000 (0:00:00.043)       0:00:27.634 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:24 +0000 (0:00:00.287)       0:00:27.922 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:24 +0000 (0:00:00.045)       0:00:27.967 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:39 +0000 (0:00:15.706)       0:00:43.674 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:39 +0000 (0:00:00.042)       0:00:43.717 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:40 +0000 (0:00:00.294)       0:00:44.011 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:40 +0000 (0:00:00.047)       0:00:44.058 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:43 +0000 (0:00:03.026)       0:00:47.085 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Thursday 06 August 2026  17:27:43 +0000 (0:00:00.053)       0:00:47.139 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Thursday 06 August 2026  17:27:43 +0000 (0:00:00.037)       0:00:47.176 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Thursday 06 August 2026  17:27:43 +0000 (0:00:00.032)       0:00:47.209 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Thursday 06 August 2026  17:27:43 +0000 (0:00:00.038)       0:00:47.247 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Thursday 06 August 2026  17:27:44 +0000 (0:00:00.824)       0:00:48.071 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Thursday 06 August 2026  17:27:44 +0000 (0:00:00.670)       0:00:48.742 *******",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Thursday 06 August 2026  17:27:46 +0000 (0:00:01.345)       0:00:50.087 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Thursday 06 August 2026  17:27:47 +0000 (0:00:00.767)       0:00:50.854 *******",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Thursday 06 August 2026  17:27:47 +0000 (0:00:00.004)       0:00:50.859 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:47 +0000 (0:00:00.479)       0:00:51.338 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:47 +0000 (0:00:00.303)       0:00:51.642 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.36.0/crictl-v1.36.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:47 +0000 (0:00:00.077)       0:00:51.720 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:48 +0000 (0:00:00.814)       0:00:52.535 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:50 +0000 (0:00:01.652)       0:00:54.187 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.36.0/critest-v1.36.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:50 +0000 (0:00:00.066)       0:00:54.253 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:51 +0000 (0:00:00.810)       0:00:55.064 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Thursday 06 August 2026  17:27:52 +0000 (0:00:01.641)       0:00:56.705 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Thursday 06 August 2026  17:27:53 +0000 (0:00:00.651)       0:00:57.356 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:27:53 +0000 (0:00:00.289)       0:00:57.645 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:27:54 +0000 (0:00:00.295)       0:00:57.941 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containernetworking/plugins/releases/download/v1.9.1/cni-plugins-linux-amd64-v1.9.1.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:27:54 +0000 (0:00:00.068)       0:00:58.009 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:27:55 +0000 (0:00:00.986)       0:00:58.996 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Thursday 06 August 2026  17:27:59 +0000 (0:00:03.910)       0:01:02.906 *******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Thursday 06 August 2026  17:27:59 +0000 (0:00:00.052)       0:01:02.959 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Thursday 06 August 2026  17:27:59 +0000 (0:00:00.786)       0:01:03.745 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Thursday 06 August 2026  17:28:00 +0000 (0:00:00.406)       0:01:04.152 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Thursday 06 August 2026  17:28:00 +0000 (0:00:00.660)       0:01:04.813 *******",
                                "changed: [controller] => (item=br_netfilter)",
                                "ok: [controller] => (item=ip_tables)",
                                "changed: [controller] => (item=ip6_tables)",
                                "changed: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Thursday 06 August 2026  17:28:02 +0000 (0:00:01.394)       0:01:06.207 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Thursday 06 August 2026  17:28:02 +0000 (0:00:00.298)       0:01:06.505 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Thursday 06 August 2026  17:28:02 +0000 (0:00:00.049)       0:01:06.554 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Thursday 06 August 2026  17:28:04 +0000 (0:00:01.314)       0:01:07.868 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Thursday 06 August 2026  17:28:04 +0000 (0:00:00.040)       0:01:07.909 *******",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Thursday 06 August 2026  17:28:04 +0000 (0:00:00.053)       0:01:07.962 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Thursday 06 August 2026  17:28:04 +0000 (0:00:00.028)       0:01:07.991 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Thursday 06 August 2026  17:28:06 +0000 (0:00:02.505)       0:01:10.496 *******",
                                "ok: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv6.conf.default.forwarding', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Thursday 06 August 2026  17:28:08 +0000 (0:00:02.233)       0:01:12.730 *******",
                                "changed: [controller] => (item=/etc/systemd/system/kubelet.service.d)",
                                "ok: [controller] => (item=/etc/kubernetes)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********",
                                "Thursday 06 August 2026  17:28:09 +0000 (0:00:00.823)       0:01:13.554 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Thursday 06 August 2026  17:28:10 +0000 (0:00:00.697)       0:01:14.252 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Thursday 06 August 2026  17:28:11 +0000 (0:00:00.664)       0:01:14.916 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Thursday 06 August 2026  17:28:11 +0000 (0:00:00.420)       0:01:15.337 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Thursday 06 August 2026  17:28:11 +0000 (0:00:00.040)       0:01:15.377 *******",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Thursday 06 August 2026  17:28:12 +0000 (0:00:00.658)       0:01:16.036 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Thursday 06 August 2026  17:28:12 +0000 (0:00:00.657)       0:01:16.694 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Thursday 06 August 2026  17:28:13 +0000 (0:00:00.763)       0:01:17.457 *******",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Thursday 06 August 2026  17:28:13 +0000 (0:00:00.007)       0:01:17.465 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Thursday 06 August 2026  17:28:15 +0000 (0:00:01.758)       0:01:19.224 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Thursday 06 August 2026  17:28:16 +0000 (0:00:00.818)       0:01:20.042 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Thursday 06 August 2026  17:28:17 +0000 (0:00:00.832)       0:01:20.874 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Thursday 06 August 2026  17:28:17 +0000 (0:00:00.812)       0:01:21.687 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Thursday 06 August 2026  17:28:18 +0000 (0:00:00.404)       0:01:22.091 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Thursday 06 August 2026  17:28:18 +0000 (0:00:00.497)       0:01:22.589 *******",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Thursday 06 August 2026  17:28:18 +0000 (0:00:00.085)       0:01:22.674 *******",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***",
                                "Thursday 06 August 2026  17:28:18 +0000 (0:00:00.082)       0:01:22.757 *******",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Thursday 06 August 2026  17:28:19 +0000 (0:00:00.307)       0:01:23.065 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Thursday 06 August 2026  17:28:19 +0000 (0:00:00.045)       0:01:23.110 *******",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Thursday 06 August 2026  17:28:19 +0000 (0:00:00.045)       0:01:23.156 *******",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Thursday 06 August 2026  17:28:19 +0000 (0:00:00.040)       0:01:23.196 *******",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.661)       0:01:23.858 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:23.890 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.027)       0:01:23.917 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.033)       0:01:23.950 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:23.982 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.031)       0:01:24.013 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.026)       0:01:24.039 *******",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Thursday 06 August 2026  17:28:20 +0000 (0:00:00.032)       0:01:24.072 *******",
                                "[ERROR]: Task failed: Module failed: non-zero return code",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml:91:3",
                                "",
                                "89         - (kubernetes_custom_front_proxy_ca_cert is defined) and (kubernetes_custom_front_proxy_ca_cert|length > 0)",
                                "90",
                                "91 - name: Initialize cluster",
                                "     ^ column 3",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": true, \"cmd\": \"kubeadm init --config /etc/kubernetes/kubeadm.yaml --upload-certs  --ignore-preflight-errors=DirAvailable--etc-kubernetes-manifests\\n\", \"delta\": \"0:04:23.221140\", \"end\": \"2026-08-06 17:32:43.705722\", \"msg\": \"non-zero return code\", \"rc\": 1, \"start\": \"2026-08-06 17:28:20.484582\", \"stderr\": \"W0806 17:28:20.524804    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"ClusterConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525237    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"InitConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525447    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"JoinConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\\nW0806 17:28:20.525562    4573 initconfiguration.go:361] [config] WARNING: Ignored configuration document with GroupVersionKind kubeadm.k8s.io/v1beta3, Kind=JoinConfiguration\\nerror: error execution phase wait-control-plane: failed while waiting for the control plane to start: kube-apiserver check failed at https://199.204.45.35:6443/livez: Get \\\"https://199.204.45.35:6443/livez?timeout=10s\\\": dial tcp 199.204.45.35:6443: connect: connection refused\\nTo see the stack trace of this error execute with --v=5 or higher\", \"stderr_lines\": [\"W0806 17:28:20.524804    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"ClusterConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525237    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"InitConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525447    4573 common.go:100] your configuration file uses a deprecated API spec: \\\"kubeadm.k8s.io/v1beta3\\\" (kind: \\\"JoinConfiguration\\\"). Please use 'kubeadm config migrate --old-config old-config-file --new-config new-config-file', which will write the new, similar spec using a newer API version.\", \"W0806 17:28:20.525562    4573 initconfiguration.go:361] [config] WARNING: Ignored configuration document with GroupVersionKind kubeadm.k8s.io/v1beta3, Kind=JoinConfiguration\", \"error: error execution phase wait-control-plane: failed while waiting for the control plane to start: kube-apiserver check failed at https://199.204.45.35:6443/livez: Get \\\"https://199.204.45.35:6443/livez?timeout=10s\\\": dial tcp 199.204.45.35:6443: connect: connection refused\", \"To see the stack trace of this error execute with --v=5 or higher\"], \"stdout\": \"[init] Using Kubernetes version: v1.34.0\\n[preflight] Running pre-flight checks\\n[preflight] Pulling images required for setting up a Kubernetes cluster\\n[preflight] This might take a minute or two, depending on the speed of your internet connection\\n[preflight] You can also perform this action beforehand using 'kubeadm config images pull'\\n[certs] Using certificateDir folder \\\"/etc/kubernetes/pki\\\"\\n[certs] Generating \\\"ca\\\" certificate and key\\n[certs] Generating \\\"apiserver\\\" certificate and key\\n[certs] apiserver serving cert is signed for DNS names [controller kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [fd40:10:100::1 199.204.45.35]\\n[certs] Generating \\\"apiserver-kubelet-client\\\" certificate and key\\n[certs] Generating \\\"front-proxy-ca\\\" certificate and key\\n[certs] Generating \\\"front-proxy-client\\\" certificate and key\\n[certs] Generating \\\"etcd/ca\\\" certificate and key\\n[certs] Generating \\\"etcd/server\\\" certificate and key\\n[certs] etcd/server serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\\n[certs] Generating \\\"etcd/peer\\\" certificate and key\\n[certs] etcd/peer serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\\n[certs] Generating \\\"etcd/healthcheck-client\\\" certificate and key\\n[certs] Generating \\\"apiserver-etcd-client\\\" certificate and key\\n[certs] Generating \\\"sa\\\" key and public key\\n[kubeconfig] Using kubeconfig folder \\\"/etc/kubernetes\\\"\\n[kubeconfig] Writing \\\"admin.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"super-admin.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"kubelet.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"controller-manager.conf\\\" kubeconfig file\\n[kubeconfig] Writing \\\"scheduler.conf\\\" kubeconfig file\\n[etcd] Creating static Pod manifest for local etcd in \\\"/etc/kubernetes/manifests\\\"\\n[control-plane] Using manifest folder \\\"/etc/kubernetes/manifests\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-apiserver\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-controller-manager\\\"\\n[control-plane] Creating static Pod manifest for \\\"kube-scheduler\\\"\\n[kubelet-start] Writing kubelet environment file with flags to file \\\"/var/lib/kubelet/kubeadm-flags.env\\\"\\n[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/instance-config.yaml\\\"\\n[patches] Applied patch of type \\\"application/strategic-merge-patch+json\\\" to target \\\"kubeletconfiguration\\\"\\n[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/config.yaml\\\"\\n[kubelet-start] Starting the kubelet\\n[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \\\"/etc/kubernetes/manifests\\\"\\n[kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\\n[kubelet-check] The kubelet is healthy after 1.001815715s\\n[control-plane-check] Waiting for healthy control plane components. This can take up to 4m0s\\n[control-plane-check] Checking kube-apiserver at https://199.204.45.35:6443/livez\\n[control-plane-check] Checking kube-controller-manager at https://0.0.0.0:10257/healthz\\n[control-plane-check] Checking kube-scheduler at https://0.0.0.0:10259/livez\\n[control-plane-check] kube-controller-manager is healthy after 2.665604268s\\n[control-plane-check] kube-scheduler is healthy after 3.152231346s\\n[control-plane-check] kube-apiserver is not healthy after 4m0.00030081s\\n\\nA control plane component may have crashed or exited when started by the container runtime.\\nTo troubleshoot, list all containers using your preferred container runtimes CLI.\\nHere is one example how you may list all running Kubernetes containers by using crictl:\\n\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock ps -a | grep kube | grep -v pause'\\n\\tOnce you have found the failing container, you can inspect its logs with:\\n\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock logs CONTAINERID'\", \"stdout_lines\": [\"[init] Using Kubernetes version: v1.34.0\", \"[preflight] Running pre-flight checks\", \"[preflight] Pulling images required for setting up a Kubernetes cluster\", \"[preflight] This might take a minute or two, depending on the speed of your internet connection\", \"[preflight] You can also perform this action beforehand using 'kubeadm config images pull'\", \"[certs] Using certificateDir folder \\\"/etc/kubernetes/pki\\\"\", \"[certs] Generating \\\"ca\\\" certificate and key\", \"[certs] Generating \\\"apiserver\\\" certificate and key\", \"[certs] apiserver serving cert is signed for DNS names [controller kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [fd40:10:100::1 199.204.45.35]\", \"[certs] Generating \\\"apiserver-kubelet-client\\\" certificate and key\", \"[certs] Generating \\\"front-proxy-ca\\\" certificate and key\", \"[certs] Generating \\\"front-proxy-client\\\" certificate and key\", \"[certs] Generating \\\"etcd/ca\\\" certificate and key\", \"[certs] Generating \\\"etcd/server\\\" certificate and key\", \"[certs] etcd/server serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\", \"[certs] Generating \\\"etcd/peer\\\" certificate and key\", \"[certs] etcd/peer serving cert is signed for DNS names [controller localhost] and IPs [199.204.45.35 127.0.0.1 ::1]\", \"[certs] Generating \\\"etcd/healthcheck-client\\\" certificate and key\", \"[certs] Generating \\\"apiserver-etcd-client\\\" certificate and key\", \"[certs] Generating \\\"sa\\\" key and public key\", \"[kubeconfig] Using kubeconfig folder \\\"/etc/kubernetes\\\"\", \"[kubeconfig] Writing \\\"admin.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"super-admin.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"kubelet.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"controller-manager.conf\\\" kubeconfig file\", \"[kubeconfig] Writing \\\"scheduler.conf\\\" kubeconfig file\", \"[etcd] Creating static Pod manifest for local etcd in \\\"/etc/kubernetes/manifests\\\"\", \"[control-plane] Using manifest folder \\\"/etc/kubernetes/manifests\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-apiserver\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-controller-manager\\\"\", \"[control-plane] Creating static Pod manifest for \\\"kube-scheduler\\\"\", \"[kubelet-start] Writing kubelet environment file with flags to file \\\"/var/lib/kubelet/kubeadm-flags.env\\\"\", \"[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/instance-config.yaml\\\"\", \"[patches] Applied patch of type \\\"application/strategic-merge-patch+json\\\" to target \\\"kubeletconfiguration\\\"\", \"[kubelet-start] Writing kubelet configuration to file \\\"/var/lib/kubelet/config.yaml\\\"\", \"[kubelet-start] Starting the kubelet\", \"[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \\\"/etc/kubernetes/manifests\\\"\", \"[kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\", \"[kubelet-check] The kubelet is healthy after 1.001815715s\", \"[control-plane-check] Waiting for healthy control plane components. This can take up to 4m0s\", \"[control-plane-check] Checking kube-apiserver at https://199.204.45.35:6443/livez\", \"[control-plane-check] Checking kube-controller-manager at https://0.0.0.0:10257/healthz\", \"[control-plane-check] Checking kube-scheduler at https://0.0.0.0:10259/livez\", \"[control-plane-check] kube-controller-manager is healthy after 2.665604268s\", \"[control-plane-check] kube-scheduler is healthy after 3.152231346s\", \"[control-plane-check] kube-apiserver is not healthy after 4m0.00030081s\", \"\", \"A control plane component may have crashed or exited when started by the container runtime.\", \"To troubleshoot, list all containers using your preferred container runtimes CLI.\", \"Here is one example how you may list all running Kubernetes containers by using crictl:\", \"\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock ps -a | grep kube | grep -v pause'\", \"\\tOnce you have found the failing container, you can inspect its logs with:\", \"\\t- 'crictl --runtime-endpoint unix:///var/run/containerd/containerd.sock logs CONTAINERID'\"]}",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=82   changed=36   unreachable=0    failed=1    skipped=26   rescued=0    ignored=2",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Thursday 06 August 2026  17:32:43 +0000 (0:04:23.508)       0:05:47.580 *******",
                                "===============================================================================",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster ------------------- 263.51s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 15.71s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 5.03s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.91s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 3.42s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 3.03s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.97s",
                                "Gathering Facts --------------------------------------------------------- 2.81s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 2.51s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.23s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.65s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.64s",
                                "vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack ---------------- 1.41s",
                                "vexxhost.containers.cni_plugins : Enable kernel modules in runtime ------ 1.39s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.37s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.35s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 1.31s",
                                "Gathering Facts --------------------------------------------------------- 1.06s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 0.99s",
                                "vexxhost.containers.package : Update state for tar ---------------------- 0.97s",
                                "CRITICAL Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.Bs5j.bgp/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml",
                                "ERROR    [bgp > converge] \u001b[31mExecuted: Failed\u001b[0m",
                                "ERROR    Ansible return code was 2, command was: ansible-playbook --inventory /home/zuul/.ansible/tmp/molecule.Bs5j.bgp/inventory --skip-tags molecule-notest,notest --inventory=/home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/inventory.yaml /home/zuul/src/github.com/vexxhost/ansible-collection-kubernetes/extensions/molecule/bgp/converge.yml"
                            ],
                            "zuul_log_id": "0242ac17-0010-b955-20d8-000000000007-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:44.199047Z",
                            "start": "2026-08-06T17:26:07.367516Z"
                        },
                        "id": "0242ac17-0010-b955-20d8-000000000007",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 1,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/ansible-collection-kubernetes/test-playbooks/molecule/post.yml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:32:50.870618Z",
                    "start": "2026-08-06T17:32:44.993121Z"
                },
                "id": "0242ac17-0010-78ba-3c7e-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/cluster",
                                    "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": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/cluster",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/cluster",
                            "size": 40,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000007",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:45.382604Z",
                            "start": "2026-08-06T17:32:45.004204Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000009",
                        "name": "creating directory for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:00.203387",
                            "end": "2026-08-06 17:32:45.972369",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=node,clusterrole,clusterrolebinding,storageclass,namespace\nexport PARALLELISM_FACTOR=2\n\nfunction list_objects () {\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"$@\"' _ {}\n}\nexport -f list_objects\n\nfunction name_objects () {\n  export OBJECT=$1\n  kubectl get ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${OBJECT} ${1#*/}\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export OBJECT=${input[0]}\n  export NAME=${input[1]#*/}\n  echo \"${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/cluster/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nlist_objects |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000000a-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:32:45.768982",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0806 17:32:45.838265    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.839058    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.840651    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.840918    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.841082    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.841627    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.842632    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nE0806 17:32:45.843224    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.843829    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.845890    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0806 17:32:45.899977    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.900248    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.900973    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.902241    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.902399    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.902964    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.903001    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.903984    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.904394    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.904497    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\nxargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value\nE0806 17:32:45.958813    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.959666    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.961358    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.961980    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:45.964000    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0806 17:32:45.838265    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.839058    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.840651    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.840918    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.841082    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.841627    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.842632    5425 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "E0806 17:32:45.843224    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.843829    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.845890    5429 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0806 17:32:45.899977    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.900248    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.900973    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.902241    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.902399    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.902964    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.903001    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.903984    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.904394    5450 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.904497    5452 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?",
                                "xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value",
                                "E0806 17:32:45.958813    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.959666    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.961358    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.961980    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:45.964000    5471 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000000a-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000007",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:46.428507Z",
                            "start": "2026-08-06T17:32:45.403746Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000000a",
                        "name": "Gathering descriptions for cluster scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/objects/namespaced",
                                    "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": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/objects/namespaced",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/objects/namespaced",
                            "size": 40,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000007",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:46.668421Z",
                            "start": "2026-08-06T17:32:46.432442Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000000b",
                        "name": "creating directory for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                            "delta": "0:00:00.075516",
                            "end": "2026-08-06 17:32:46.974234",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nexport OBJECT_TYPE=configmaps,cronjobs,daemonsets,deployment,endpoints,ingresses,jobs,networkpolicies,pods,podsecuritypolicies,persistentvolumeclaims,rolebindings,roles,secrets,serviceaccounts,services,statefulsets\nexport PARALLELISM_FACTOR=2\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\n\nfunction list_namespaced_objects () {\n  export NAMESPACE=$1\n  printf ${OBJECT_TYPE} | xargs -d ',' -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} $@\"' _ {}\n}\nexport -f list_namespaced_objects\n\nfunction name_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  kubectl get -n ${NAMESPACE} ${OBJECT} -o name | xargs -L1 -I {} -P1 -n1 bash -c 'echo \"${NAMESPACE} ${OBJECT} $@\"' _ {}\n}\nexport -f name_objects\n\nfunction get_objects () {\n  input=($1)\n  export NAMESPACE=${input[0]}\n  export OBJECT=${input[1]}\n  export NAME=${input[2]#*/}\n  echo \"${NAMESPACE}/${OBJECT}/${NAME}\"\n  DIR=\"/tmp/logs/objects/namespaced/${NAMESPACE}/${OBJECT}\"\n  mkdir -p ${DIR}\n  kubectl get -n ${NAMESPACE} ${OBJECT} ${NAME} -o yaml > \"${DIR}/${NAME}.yaml\"\n  kubectl describe -n ${NAMESPACE} ${OBJECT} ${NAME} > \"${DIR}/${NAME}.txt\"\n}\nexport -f get_objects\n\nget_namespaces |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'list_namespaced_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'name_objects \"$@\"' _ {} |  xargs -r -n 1 -P ${PARALLELISM_FACTOR} -I {} bash -c 'get_objects \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000000c-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:32:46.898718",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nxargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value\nE0806 17:32:46.961595    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:46.962541    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:46.964360    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:46.965002    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:46.966528    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value",
                                "E0806 17:32:46.961595    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:46.962541    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:46.964360    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:46.965002    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:46.966528    5503 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000000c-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000007",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:47.207209Z",
                            "start": "2026-08-06T17:32:46.689597Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000000c",
                        "name": "Gathering descriptions for namespace scoped objects"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.35:/tmp/logs/objects /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                            "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/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.35:/tmp/logs/objects",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "created directory /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller\ncd+++++++++ objects/\ncd+++++++++ objects/cluster/\ncd+++++++++ objects/namespaced/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "created directory /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                                "cd+++++++++ objects/",
                                "cd+++++++++ objects/cluster/",
                                "cd+++++++++ objects/namespaced/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000007",
                        "name": "describe-kubernetes-objects",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/describe-kubernetes-objects"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:47.876406Z",
                            "start": "2026-08-06T17:32:47.215357Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000000d",
                        "name": "Downloads logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs",
                                    "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": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs",
                            "size": 40,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-00000000000f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:48.109119Z",
                            "start": "2026-08-06T17:32:47.885476Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000011",
                        "name": "creating directory for pod logs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "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": null,
                                    "modification_time": null,
                                    "modification_time_format": "%Y%m%d%H%M.%S",
                                    "owner": null,
                                    "path": "/tmp/logs/pod-logs/failed-pods",
                                    "recurse": false,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": null,
                                    "state": "directory",
                                    "unsafe_writes": false
                                }
                            },
                            "mode": "0755",
                            "owner": "root",
                            "path": "/tmp/logs/pod-logs/failed-pods",
                            "size": 40,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-00000000000f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:48.339199Z",
                            "start": "2026-08-06T17:32:48.114269Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000012",
                        "name": "creating directory for failed pod logs"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                            "delta": "0:00:00.071345",
                            "end": "2026-08-06 17:32:48.643351",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\nfunction get_namespaces () {\n  kubectl get namespaces -o name | awk -F '/' '{ print $NF }'\n}\nfunction get_pods () {\n  NAMESPACE=$1\n  kubectl get pods -n ${NAMESPACE} -o name | awk -F '/' '{ print $NF }' | xargs -I {} echo ${NAMESPACE} {}\n}\nexport -f get_pods\nfunction get_pod_logs () {\n  NAMESPACE=${1% *}\n  POD=${1#* }\n  INIT_CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.initContainers[]?.name')\n  CONTAINERS=$(kubectl get pod $POD -n ${NAMESPACE} -o json | jq -r '.spec.containers[].name')\n  for CONTAINER in ${INIT_CONTAINERS} ${CONTAINERS}; do\n    echo \"${NAMESPACE}/${POD}/${CONTAINER}\"\n    mkdir -p \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}\"\n    mkdir -p \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}\"\n    kubectl logs ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n    kubectl logs --previous ${POD} -n ${NAMESPACE} -c ${CONTAINER} > \"/tmp/logs/pod-logs/failed-pods/${NAMESPACE}/${POD}/${CONTAINER}.txt\"\n  done\n}\nexport -f get_pod_logs\nget_namespaces |  xargs -r -I {} bash -c 'get_pods \"$@\"' _ {} |  xargs -r -I {} bash -c 'get_pod_logs \"$@\"' _ {}",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-78ba-3c7e-000000000013-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:32:48.572006",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0806 17:32:48.633506    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:48.634211    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:48.635539    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:48.635764    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:48.637150    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0806 17:32:48.633506    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:48.634211    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:48.635539    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:48.635764    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:48.637150    5555 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-78ba-3c7e-000000000013-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-00000000000f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:48.875799Z",
                            "start": "2026-08-06T17:32:48.360635Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000013",
                        "name": "retrieve all kubernetes logs, current and previous (if they exist)"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.35:/tmp/logs/pod-logs /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                            "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/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.35:/tmp/logs/pod-logs",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ pod-logs/\ncd+++++++++ pod-logs/failed-pods/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ pod-logs/",
                                "cd+++++++++ pod-logs/failed-pods/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-00000000000f",
                        "name": "gather-pod-logs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/gather-pod-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:49.390662Z",
                            "start": "2026-08-06T17:32:48.880896Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000014",
                        "name": "Downloads pod logs to executor"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "file",
                            "changed": true,
                            "msg": "All items completed",
                            "results": [
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/values",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "values",
                                    "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": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/values",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/values",
                                    "size": 40,
                                    "state": "directory",
                                    "uid": 0
                                },
                                {
                                    "ansible_loop_var": "directory",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/tmp/logs/helm/releases",
                                            "state": "absent"
                                        }
                                    },
                                    "directory": "releases",
                                    "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": null,
                                            "modification_time": null,
                                            "modification_time_format": "%Y%m%d%H%M.%S",
                                            "owner": null,
                                            "path": "/tmp/logs/helm/releases",
                                            "recurse": false,
                                            "selevel": null,
                                            "serole": null,
                                            "setype": null,
                                            "seuser": null,
                                            "src": null,
                                            "state": "directory",
                                            "unsafe_writes": false
                                        }
                                    },
                                    "mode": "0755",
                                    "owner": "root",
                                    "path": "/tmp/logs/helm/releases",
                                    "size": 40,
                                    "state": "directory",
                                    "uid": 0
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000016",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:49.831240Z",
                            "start": "2026-08-06T17:32:49.400223Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-000000000018",
                        "name": "creating directory for helm release status"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "shell",
                            "changed": true,
                            "cmd": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                            "delta": "0:00:00.080129",
                            "end": "2026-08-06 17:32:50.141168",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "set -e\n\nfor namespace in $(kubectl get namespaces --no-headers --output custom-columns=\":metadata.name\"); do\n      # get all Helm releases including pending and failed releases\n      for release in $(helm list --all --short --namespace $namespace); do\n              # Make respective directories only when a Helm release actually exists in the namespace\n              # to prevent uploading a bunch of empty directories for namespaces without a Helm release.\n              mkdir -p /tmp/logs/helm/releases/$namespace\n              mkdir -p /tmp/logs/helm/values/$namespace\n\n              helm status $release --namespace $namespace >> /tmp/logs/helm/releases/$namespace/$release.txt\n              helm get values $release --namespace $namespace --all >> /tmp/logs/helm/values/$namespace/$release.yaml\n      done\ndone",
                                    "_uses_shell": true,
                                    "argv": null,
                                    "chdir": null,
                                    "creates": null,
                                    "executable": "/bin/bash",
                                    "expand_argument_vars": true,
                                    "removes": null,
                                    "stdin": null,
                                    "stdin_add_newline": true,
                                    "strip_empty_ends": true,
                                    "zuul_ansible_split_streams": false,
                                    "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000001a-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-08-06 17:32:50.061039",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "E0806 17:32:50.128926    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:50.129907    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:50.131489    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:50.131873    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nE0806 17:32:50.133751    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?",
                            "stdout_lines": [
                                "E0806 17:32:50.128926    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:50.129907    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:50.131489    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:50.131873    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "E0806 17:32:50.133751    5605 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http://localhost:8080/api?timeout=32s\\\": dial tcp [::1]:8080: connect: connection refused\"",
                                "The connection to the server localhost:8080 was refused - did you specify the right host or port?"
                            ],
                            "zuul_log_id": "0242ac17-0010-78ba-3c7e-00000000001a-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000016",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:50.377765Z",
                            "start": "2026-08-06T17:32:49.852466Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000001a",
                        "name": "Gather get release status for helm charts"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "synchronize",
                            "changed": true,
                            "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh='/usr/bin/ssh -S none -o Port=22 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' --rsync-path='sudo -u root rsync' --out-format='<<CHANGED>>%i %n%L' zuul@199.204.45.35:/tmp/logs/helm /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                            "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/932e4ad87dbb439bb12a312a17c87bd7/work/logs/controller",
                                    "dest_port": 22,
                                    "dirs": false,
                                    "existing_only": false,
                                    "group": null,
                                    "link_dest": null,
                                    "links": null,
                                    "mode": "pull",
                                    "owner": null,
                                    "partial": false,
                                    "perms": null,
                                    "private_key": null,
                                    "recursive": null,
                                    "rsync_opts": [],
                                    "rsync_path": "sudo -u root rsync",
                                    "rsync_timeout": 0,
                                    "set_remote_user": true,
                                    "src": "zuul@199.204.45.35:/tmp/logs/helm",
                                    "ssh_connection_multiplexing": false,
                                    "times": null,
                                    "use_ssh_args": false,
                                    "verify_host": false
                                }
                            },
                            "msg": "cd+++++++++ helm/\ncd+++++++++ helm/releases/\ncd+++++++++ helm/values/\n",
                            "rc": 0,
                            "stdout_lines": [
                                "cd+++++++++ helm/",
                                "cd+++++++++ helm/releases/",
                                "cd+++++++++ helm/values/"
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-78ba-3c7e-000000000016",
                        "name": "helm-release-status",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/untrusted/project_4/opendev.org/openstack/openstack-helm/roles/helm-release-status"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:50.870618Z",
                            "start": "2026-08-06T17:32:50.383269Z"
                        },
                        "id": "0242ac17-0010-78ba-3c7e-00000000001b",
                        "name": "Downloads logs to executor"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 12,
            "failures": 0,
            "ignored": 0,
            "ok": 12,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "1",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:32:55.086386Z",
                    "start": "2026-08-06T17:32:51.672066Z"
                },
                "id": "0242ac17-0010-6937-b92a-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "changed": false,
                            "false_condition": "groups['all'] | length > 1",
                            "skip_reason": "Conditional result was False",
                            "skipped": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:51.728886Z",
                            "start": "2026-08-06T17:32:51.683564Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:51.779052Z",
                            "start": "2026-08-06T17:32:51.736712Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-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/932e4ad87dbb439bb12a312a17c87bd7/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:52.691417Z",
                            "start": "2026-08-06T17:32:51.783123Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-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.35:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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.35:/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/932e4ad87dbb439bb12a312a17c87bd7/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.35:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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.35:/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/932e4ad87dbb439bb12a312a17c87bd7/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.35:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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.35:/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/932e4ad87dbb439bb12a312a17c87bd7/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:54.381973Z",
                            "start": "2026-08-06T17:32:52.701389Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/artifacts/* /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.006806",
                                    "end": "2026-08-06 17:32:54.814101",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/artifacts/* /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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-08-06 17:32:54.807295",
                                    "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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/docs/* /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.007183",
                                    "end": "2026-08-06 17:32:55.042935",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/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/932e4ad87dbb439bb12a312a17c87bd7/work/docs/* /var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/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-08-06 17:32:55.035752",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:55.086386Z",
                            "start": "2026-08-06T17:32:54.395218Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-08-06T17:32:55.611883Z",
                    "start": "2026-08-06T17:32:55.096065Z"
                },
                "id": "0242ac17-0010-6937-b92a-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDR8WNboXA+jQugphn7oXM2WRs4OXzS5JaVXbVO+FbVrNzLWUwjHkUwtN80Ou2hVc7Pp6Zw3IvrCiU1PHGoLpfQwWvKlU4dIfd5B1LWPNR7QVdCDrSJmfsKcN7bNYy5c1IwjL/8qcWTuC1d7/wDhWij/x53vh3erzBOzgD3boil31zeI1TNedzMuNmQbIbOLwjvBF2C+WJODn9IXxemjWC5741NXwxGYAMOg12jPr07KBAxHiAFMulqrufQd3tXefqzdmSGqKHkXov5wIKEjVZUlr0iGXKekB1QQOPC6BUwT6YbzZ4AkQmrV9g9gFDeECgZxOOnghhn7D1OB7gcRiQm2HXzWvXHyowKrPn1bwDhoPjFk9f87DIuoaut02uBEEPhcUR0Cwivfgzl56g1Njq+rsC+ahi2/Vk6rOwX85q39TJMT9Oew2IOUAh5a3dfCt9cbCqtfT7SfzBhIT099P7AV43Xq1EE2OxwFZ8LckqFrANXOm8KOWDkmJopvPkUc9U= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQDR8WNboXA+jQugphn7oXM2WRs4OXzS5JaVXbVO+FbVrNzLWUwjHkUwtN80Ou2hVc7Pp6Zw3IvrCiU1PHGoLpfQwWvKlU4dIfd5B1LWPNR7QVdCDrSJmfsKcN7bNYy5c1IwjL/8qcWTuC1d7/wDhWij/x53vh3erzBOzgD3boil31zeI1TNedzMuNmQbIbOLwjvBF2C+WJODn9IXxemjWC5741NXwxGYAMOg12jPr07KBAxHiAFMulqrufQd3tXefqzdmSGqKHkXov5wIKEjVZUlr0iGXKekB1QQOPC6BUwT6YbzZ4AkQmrV9g9gFDeECgZxOOnghhn7D1OB7gcRiQm2HXzWvXHyowKrPn1bwDhoPjFk9f87DIuoaut02uBEEPhcUR0Cwivfgzl56g1Njq+rsC+ahi2/Vk6rOwX85q39TJMT9Oew2IOUAh5a3dfCt9cbCqtfT7SfzBhIT099P7AV43Xq1EE2OxwFZ8LckqFrANXOm8KOWDkmJopvPkUc9U= zuul-build-sshkey",
                            "key_options": null,
                            "keyfile": "/home/zuul/.ssh/authorized_keys",
                            "manage_dir": true,
                            "path": null,
                            "state": "absent",
                            "user": "zuul",
                            "validate_certs": true
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-6937-b92a-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/932e4ad87dbb439bb12a312a17c87bd7/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-08-06T17:32:55.611883Z",
                            "start": "2026-08-06T17:32:55.104176Z"
                        },
                        "id": "0242ac17-0010-6937-b92a-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
}
]
