[
{
    "branch": "main",
    "index": "0",
    "phase": "pre",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/pre.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-18T10:38:21.109553Z",
                    "start": "2026-05-18T10:38:18.729692Z"
                },
                "id": "0242ac17-0010-4e80-268e-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-05-18",
                                    "day": "18",
                                    "epoch": "1779100699",
                                    "epoch_int": "1779100699",
                                    "hour": "10",
                                    "iso8601": "2026-05-18T10:38:19Z",
                                    "iso8601_basic": "20260518T103819285927",
                                    "iso8601_basic_short": "20260518T103819",
                                    "iso8601_micro": "2026-05-18T10:38:19.285927Z",
                                    "minute": "38",
                                    "month": "05",
                                    "second": "19",
                                    "time": "10:38:19",
                                    "tz": "UTC",
                                    "tz_dst": "UTC",
                                    "tz_offset": "+0000",
                                    "weekday": "Monday",
                                    "weekday_number": "1",
                                    "weeknumber": "20",
                                    "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/b883bf7f07234ee7b63d219b27e6f502/ansible/pre_playbook_0/ansible.cfg",
                                    "DEBIAN_FRONTEND": "noninteractive",
                                    "GPG_KEY": "A035C8C19219BA821ECEA86B64E628F8D684696D",
                                    "HOME": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work",
                                    "HOSTNAME": "2d72f0692154",
                                    "KUBECONFIG": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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": "362963",
                                    "SSH_AUTH_SOCK": "/tmp/ssh-0KxoOIv3U22c/agent.362962",
                                    "TMP": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/tmp",
                                    "ZUUL_ANSIBLE_SPLIT_STREAMS": "False",
                                    "ZUUL_JOBDIR": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502",
                                    "ZUUL_JOB_FAILURE_OUTPUT": "[]",
                                    "ZUUL_JOB_LOG_CONFIG": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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": 1.77099609375,
                                    "1m": 1.66943359375,
                                    "5m": 1.6689453125
                                },
                                "ansible_local": {},
                                "ansible_lsb": {},
                                "ansible_lvm": "N/A",
                                "ansible_machine": "x86_64",
                                "ansible_memfree_mb": 5280,
                                "ansible_memory_mb": {
                                    "nocache": {
                                        "free": 17656,
                                        "used": 14434
                                    },
                                    "real": {
                                        "free": 5280,
                                        "total": 32090,
                                        "used": 26810
                                    },
                                    "swap": {
                                        "cached": 0,
                                        "free": 0,
                                        "total": 0,
                                        "used": 0
                                    }
                                },
                                "ansible_memtotal_mb": 32090,
                                "ansible_mounts": [
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/etc/resolv.conf",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/etc/hosts",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/ansible/9",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/ansible",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/kube",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/untrusted",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/ansible/pre_playbook_0",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/etc/zuul/site-variables.yaml",
                                        "options": "ro,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "size_total": 166304071680,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 147600373,
                                        "block_size": 4096,
                                        "block_total": 263940717,
                                        "block_used": 116340344,
                                        "device": "/dev/vdb",
                                        "fstype": "ext4",
                                        "inode_available": 48715568,
                                        "inode_total": 67108864,
                                        "inode_used": 18393296,
                                        "mount": "/srv/static/logs",
                                        "options": "rw,nosuid,nodev,relatime,discard",
                                        "size_available": 604571127808,
                                        "size_total": 1081101176832,
                                        "uuid": "N/A"
                                    },
                                    {
                                        "block_available": 9032476,
                                        "block_size": 4096,
                                        "block_total": 40601580,
                                        "block_used": 31569104,
                                        "device": "/dev/vda1",
                                        "fstype": "ext4",
                                        "inode_available": 16716785,
                                        "inode_total": 20643840,
                                        "inode_used": 3927055,
                                        "mount": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/.ansible",
                                        "options": "rw,nosuid,nodev,relatime,discard,errors=remount-ro,bind",
                                        "size_available": 36997021696,
                                        "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": 42764429,
                                "ansible_user_dir": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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-05-18T10:38:19.603576Z",
                            "start": "2026-05-18T10:38:18.737576Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-00000000002a",
                        "name": "Gathering Facts"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "include_role",
                            "changed": false,
                            "include_args": {
                                "name": "set-zuul-log-path-fact"
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:19.639104Z",
                            "start": "2026-05-18T10:38:19.607874Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-000000000008",
                        "name": "Setup log path fact"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "zuul_log_path": "b88/oss/b883bf7f07234ee7b63d219b27e6f502"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000054",
                        "name": "set-zuul-log-path-fact",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/set-zuul-log-path-fact"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:19.685663Z",
                            "start": "2026-05-18T10:38:19.652075Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-000000000056",
                        "name": "Set log path for a build"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "debug",
                            "changed": false,
                            "msg": "# Job Information\nAnsible Version: 2.16.18\nJob: atmosphere-common-molecule-secretgen-controller\nPipeline: check\nExecutor: 2d72f0692154\nTriggered by: https://github.com/vexxhost/atmosphere.common/pull/97\nEvent ID: 928f6ab0-52a5-11f1-9a11-4099360e7931\n"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:19.735561Z",
                            "start": "2026-05-18T10:38:19.693677Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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: np0000174457\nUsername: zuul\nDistro: Ubuntu 24.04\nProvider: yul1\nRegion: ca-ymq-1\nLabel: ubuntu-noble\nProduct Name: OpenStack Nova\nInterface IP: 199.204.45.248\n",
                                    "zj_item": "controller"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000006",
                        "name": "emit-job-header",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/emit-job-header"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:19.857917Z",
                            "start": "2026-05-18T10:38:19.739297Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-00000000000a",
                        "name": "Print node information"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "file",
                            "changed": true,
                            "diff": {
                                "after": {
                                    "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs/zuul-info",
                                    "state": "directory"
                                },
                                "before": {
                                    "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/logs/zuul-info",
                            "size": 4096,
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:20.273679Z",
                            "start": "2026-05-18T10:38:19.868032Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-00000000000f",
                        "name": "Ensure Zuul Ansible directory exists"
                    }
                },
                {
                    "hosts": {
                        "localhost": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "67633e91e2533c42e654a14e8d9fb2e7134252f6",
                            "dest": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs/zuul-info/inventory.yaml",
                            "diff": [],
                            "gid": 0,
                            "group": "root",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "67633e91e2533c42e654a14e8d9fb2e7134252f6",
                                    "content": null,
                                    "dest": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/.ansible/tmp/ansible-tmp-1779100700.3104646-84-170069661199053/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "9242d02f56883eef59ba639ab763439b",
                            "mode": "0644",
                            "owner": "root",
                            "size": 17953,
                            "src": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/.ansible/tmp/ansible-tmp-1779100700.3104646-84-170069661199053/source",
                            "state": "file",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-00000000000d",
                        "name": "log-inventory",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/log-inventory"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:21.109553Z",
                            "start": "2026-05-18T10:38:20.283306Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-000000000010",
                        "name": "Copy ansible inventory to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-05-18T10:38:28.117388Z",
                    "start": "2026-05-18T10:38:21.119060Z"
                },
                "id": "0242ac17-0010-4e80-268e-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/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa"
                                }
                            },
                            "stat": {
                                "exists": false
                            }
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:21.347212Z",
                            "start": "2026-05-18T10:38:21.128543Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:21.391046Z",
                            "start": "2026-05-18T10:38:21.356500Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa",
                                "-b",
                                "3072"
                            ],
                            "delta": "0:00:00.666812",
                            "end": "2026-05-18 10:38:22.435055",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-keygen -t rsa -N '' -C 'zuul-build-sshkey' -f /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_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-4e80-268e-00000000009c-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-18 10:38:21.768243",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Generating public/private rsa key pair.\nYour identification has been saved in /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa\nYour public key has been saved in /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa.pub\nThe key fingerprint is:\nSHA256:+4GvjHvEuuqLtaRFJpjf+7wM51EIvc9HtVzCBMqTDVs zuul-build-sshkey\nThe key's randomart image is:\n+---[RSA 3072]----+\n|        . E..    |\n|     . . B o     |\n|    . . * . + .  |\n| o   . o . o +   |\n|o . o o.S . o    |\n| . =   +o+       |\n|  . * oo= o      |\n|   * O.+.+ .     |\n|  o.*+X=o.o      |\n+----[SHA256]-----+",
                            "stdout_lines": [
                                "Generating public/private rsa key pair.",
                                "Your identification has been saved in /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa",
                                "Your public key has been saved in /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa.pub",
                                "The key fingerprint is:",
                                "SHA256:+4GvjHvEuuqLtaRFJpjf+7wM51EIvc9HtVzCBMqTDVs zuul-build-sshkey",
                                "The key's randomart image is:",
                                "+---[RSA 3072]----+",
                                "|        . E..    |",
                                "|     . . B o     |",
                                "|    . . * . + .  |",
                                "| o   . o . o +   |",
                                "|o . o o.S . o    |",
                                "| . =   +o+       |",
                                "|  . * oo= o      |",
                                "|   * O.+.+ .     |",
                                "|  o.*+X=o.o      |",
                                "+----[SHA256]-----+"
                            ],
                            "zuul_log_id": "0242ac17-0010-4e80-268e-00000000009c-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:22.483129Z",
                            "start": "2026-05-18T10:38:21.412838Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-00000000009c",
                        "name": "Create Temp SSH key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "include_tasks",
                            "changed": false,
                            "include": "remote-linux.yaml",
                            "include_args": {}
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:22.523544Z",
                            "start": "2026-05-18T10:38:22.488462Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:22.577130Z",
                            "start": "2026-05-18T10:38:22.551068Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCeZ2wpGMp8lheweRtd0ui5mBpnzZXiK5fmvtf1cqgdUQFyTdJkuw9R1TqCitdK3y50lEuMTzrn69c6VO5YSBdbkXahA0iX5NScSvCyuCCnI4zSVQE23kEdj50RwLv9hgvpcikZuwn5tqLX/s1JTDV5CVQ32l1odx0qLmhWqQtEgRcI90WisTTvIxLCbwPAMzRgG0BEtoljkc0FKSDHjbawYlYjcJ2nqkcpbFgsCOfNLshmWNeDNOm+j+FWgJeToxKkDM19Uy07YdAVW2i7isKGb++QbZYWLUvDexQo2ZCyW8DgUGwKJE0TzWbKtMUpJOHVJsT9XIb4s/CzV6LhtC6ec3Ghda7BXUsclUvvuS+WgX08IYBaVr/v/FBN5eU+aVlDrfl1D9HMSUPzAfPmTDswHHl2AbYwdaLyD7CtF7JAL8Gw/Yn1STekGgsqUOIWHQdkh4FST2JgFt+p2WWN1hysCFk3WJYhJ3TGUDJ55Q/1gO7hdzPzrvMFAOJAme/7IAk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCeZ2wpGMp8lheweRtd0ui5mBpnzZXiK5fmvtf1cqgdUQFyTdJkuw9R1TqCitdK3y50lEuMTzrn69c6VO5YSBdbkXahA0iX5NScSvCyuCCnI4zSVQE23kEdj50RwLv9hgvpcikZuwn5tqLX/s1JTDV5CVQ32l1odx0qLmhWqQtEgRcI90WisTTvIxLCbwPAMzRgG0BEtoljkc0FKSDHjbawYlYjcJ2nqkcpbFgsCOfNLshmWNeDNOm+j+FWgJeToxKkDM19Uy07YdAVW2i7isKGb++QbZYWLUvDexQo2ZCyW8DgUGwKJE0TzWbKtMUpJOHVJsT9XIb4s/CzV6LhtC6ec3Ghda7BXUsclUvvuS+WgX08IYBaVr/v/FBN5eU+aVlDrfl1D9HMSUPzAfPmTDswHHl2AbYwdaLyD7CtF7JAL8Gw/Yn1STekGgsqUOIWHQdkh4FST2JgFt+p2WWN1hysCFk3WJYhJ3TGUDJ55Q/1gO7hdzPzrvMFAOJAme/7IAk= 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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:23.131862Z",
                            "start": "2026-05-18T10:38:22.588149Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:23.357481Z",
                            "start": "2026-05-18T10:38:23.138615Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-0000000000be",
                        "name": "Make sure user has a .ssh"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "a30d99500fa0c16cd1ec31a7245ef4e73aa01aa6",
                            "dest": "/home/zuul/.ssh/id_rsa",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "b883bf7f07234ee7b63d219b27e6f502_id_rsa",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "a30d99500fa0c16cd1ec31a7245ef4e73aa01aa6",
                                    "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-1779100703.4052794-190-168936593781728/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "a8db9eda0a47f5772703067204e71530",
                            "mode": "0600",
                            "owner": "zuul",
                            "size": 2602,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779100703.4052794-190-168936593781728/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:23.928929Z",
                            "start": "2026-05-18T10:38:23.363383Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-0000000000bf",
                        "name": "Install build private key as SSH key on all nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "copy",
                            "changed": true,
                            "checksum": "9b6490c277a91e594cdca8e8d3515dd6ed3388ab",
                            "dest": "/home/zuul/.ssh/id_rsa.pub",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "b883bf7f07234ee7b63d219b27e6f502_id_rsa.pub",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "9b6490c277a91e594cdca8e8d3515dd6ed3388ab",
                                    "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-1779100703.9788613-200-207628990502138/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "d74586a236178999cad6595a7fa45219",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 571,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779100703.9788613-200-207628990502138/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:24.485669Z",
                            "start": "2026-05-18T10:38:23.934131Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:24.515893Z",
                            "start": "2026-05-18T10:38:24.490729Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-0000000000a3",
                        "name": "remove-zuul-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-zuul-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:24.864449Z",
                            "start": "2026-05-18T10:38:24.525037Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-0000000000a5",
                        "name": "Remove master key from local agent"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "command",
                            "changed": true,
                            "cmd": [
                                "ssh-add",
                                "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa"
                            ],
                            "delta": "0:00:00.013654",
                            "end": "2026-05-18 10:38:25.117084",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "ssh-add /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_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-4e80-268e-0000000000ab-0-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-18 10:38:25.103430",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Identity added: /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa (zuul-build-sshkey)",
                            "stdout_lines": [
                                "Identity added: /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/b883bf7f07234ee7b63d219b27e6f502_id_rsa (zuul-build-sshkey)"
                            ],
                            "zuul_log_id": "0242ac17-0010-4e80-268e-0000000000ab-0-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:25.173611Z",
                            "start": "2026-05-18T10:38:24.883120Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-0000000000ab",
                        "name": "Add back temp key"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ping",
                            "changed": false,
                            "invocation": {
                                "module_args": {
                                    "data": "pong"
                                }
                            },
                            "ping": "pong"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:25.520681Z",
                            "start": "2026-05-18T10:38:25.180426Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000016",
                        "name": "add-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/add-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:25.553374Z",
                            "start": "2026-05-18T10:38:25.527570Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:25.944069Z",
                            "start": "2026-05-18T10:38:25.570155Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-00000000001b",
                        "name": "prepare-workspace",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/prepare-workspace"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:26.854569Z",
                            "start": "2026-05-18T10:38:25.949746Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:27.500365Z",
                            "start": "2026-05-18T10:38:26.865928Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-4e80-268e-000000000020",
                        "name": "ensure-output-dirs",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/ensure-output-dirs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:28.117388Z",
                            "start": "2026-05-18T10:38:27.507259Z"
                        },
                        "id": "0242ac17-0010-4e80-268e-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-05-18T10:38:31.912418Z",
                    "start": "2026-05-18T10:38:28.839767Z"
                },
                "id": "0242ac17-0010-d9c2-0544-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-1779100708.8924482-5-172642339219578/uv-x86_64-unknown-linux-gnu2w6ekf95.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-1779100708.8924482-5-172642339219578/uv-x86_64-unknown-linux-gnu2w6ekf95.tar.gz",
                            "state": "directory",
                            "uid": 0
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d9c2-0544-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:31.361719Z",
                            "start": "2026-05-18T10:38:28.851392Z"
                        },
                        "id": "0242ac17-0010-d9c2-0544-000000000007",
                        "name": "Extract archive"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "/usr/local/bin/uv",
                                "--version"
                            ],
                            "delta": "0:00:00.015440",
                            "end": "2026-05-18 10:38:31.225172",
                            "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-d9c2-0544-000000000008-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-18 10:38:31.209732",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "uv 0.8.13",
                            "stdout_lines": [
                                "uv 0.8.13"
                            ],
                            "zuul_log_id": "0242ac17-0010-d9c2-0544-000000000008-1-controller"
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-d9c2-0544-000000000005",
                        "name": "setup-uv",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/untrusted/project_0/github.com/vexxhost/zuul-jobs/roles/setup-uv"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:31.912418Z",
                            "start": "2026-05-18T10:38:31.391357Z"
                        },
                        "id": "0242ac17-0010-d9c2-0544-000000000008",
                        "name": "Print version"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 2,
            "failures": 0,
            "ignored": 0,
            "ok": 2,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "run",
    "playbook": "github.com/vexxhost/zuul-jobs/playbooks/molecule/run.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-18T10:42:12.207387Z",
                    "start": "2026-05-18T10:38:32.603339Z"
                },
                "id": "0242ac17-0010-a65f-2662-000000000002",
                "name": "all"
            },
            "tasks": [
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.copy",
                            "changed": true,
                            "checksum": "67633e91e2533c42e654a14e8d9fb2e7134252f6",
                            "dest": "src/github.com/vexxhost/atmosphere.common/inventory.yaml",
                            "diff": [],
                            "gid": 1000,
                            "group": "zuul",
                            "invocation": {
                                "module_args": {
                                    "_original_basename": "inventory.yaml",
                                    "attributes": null,
                                    "backup": false,
                                    "checksum": "67633e91e2533c42e654a14e8d9fb2e7134252f6",
                                    "content": null,
                                    "dest": "src/github.com/vexxhost/atmosphere.common",
                                    "directory_mode": null,
                                    "follow": false,
                                    "force": true,
                                    "group": null,
                                    "local_follow": null,
                                    "mode": 420,
                                    "owner": null,
                                    "remote_src": null,
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779100712.6561623-5-269525680969650/source",
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "md5sum": "9242d02f56883eef59ba639ab763439b",
                            "mode": "0644",
                            "owner": "zuul",
                            "size": 17953,
                            "src": "/home/zuul/.ansible/tmp/ansible-tmp-1779100712.6561623-5-269525680969650/source",
                            "state": "file",
                            "uid": 1000
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:33.561875Z",
                            "start": "2026-05-18T10:38:32.614601Z"
                        },
                        "id": "0242ac17-0010-a65f-2662-000000000004",
                        "name": "Copy inventory file for Zuul"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.replace",
                            "changed": true,
                            "invocation": {
                                "module_args": {
                                    "after": null,
                                    "attributes": null,
                                    "backup": false,
                                    "before": null,
                                    "encoding": "utf-8",
                                    "group": null,
                                    "mode": null,
                                    "owner": null,
                                    "path": "src/github.com/vexxhost/atmosphere.common/inventory.yaml",
                                    "regexp": "(^\\s*ansible_host:\\s*).*$",
                                    "replace": "\\1\"{{ nodepool.private_ipv4 }}\"",
                                    "selevel": null,
                                    "serole": null,
                                    "setype": null,
                                    "seuser": null,
                                    "unsafe_writes": false,
                                    "validate": null
                                }
                            },
                            "msg": "1 replacements made",
                            "rc": 0
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:38:33.930509Z",
                            "start": "2026-05-18T10:38:33.569489Z"
                        },
                        "id": "0242ac17-0010-a65f-2662-000000000005",
                        "name": "Switch \"ansible_host\" to private IP"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "ansible.builtin.command",
                            "changed": true,
                            "cmd": [
                                "uv",
                                "run",
                                "molecule",
                                "test",
                                "--destroy",
                                "never",
                                "-s",
                                "secretgen-controller"
                            ],
                            "delta": "0:03:38.134476",
                            "end": "2026-05-18 10:42:11.893737",
                            "invocation": {
                                "module_args": {
                                    "_raw_params": "uv run molecule test --destroy never -s secretgen-controller",
                                    "_uses_shell": false,
                                    "argv": null,
                                    "chdir": "src/github.com/vexxhost/atmosphere.common",
                                    "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-a65f-2662-000000000006-1-controller",
                                    "zuul_no_log": false,
                                    "zuul_output_max_bytes": 1073741824
                                }
                            },
                            "msg": "",
                            "rc": 0,
                            "start": "2026-05-18 10:38:33.759261",
                            "stderr": "",
                            "stderr_lines": [],
                            "stdout": "Using CPython 3.12.3 interpreter at: /usr/bin/python3\nCreating virtual environment at: .venv\nwarning: No `requires-python` value found in the workspace. Defaulting to `>=3.12`.\nDownloading pygments (1.2MiB)\nDownloading kubernetes (1.9MiB)\nDownloading ansible-core (2.3MiB)\nDownloading cryptography (4.5MiB)\n Downloading cryptography\n Downloading pygments\n Downloading kubernetes\n Downloading ansible-core\nInstalled 41 packages in 48ms\nINFO     Collection 'atmosphere.common' detected.\nINFO     Scenarios will be used from 'extensions/molecule'\nINFO     [secretgen-controller > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy\nINFO     [secretgen-controller > prerun] Performing prerun with role_name_check=0...\nINFO     [secretgen-controller > dependency] Executing\nWARNING  [secretgen-controller > dependency] Missing roles requirements file: requirements.yml\nWARNING  [secretgen-controller > dependency] Missing collections requirements file: collections.yml\nWARNING  [secretgen-controller > dependency] Executed: 2 missing (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > cleanup] Executing\nWARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > destroy] Executing\nWARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.\nINFO     [secretgen-controller > destroy] Executed: Successful\nINFO     [secretgen-controller > syntax] Executing\n\nplaybook: /home/zuul/src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/converge.yml\nINFO     [secretgen-controller > syntax] Executed: Successful\nINFO     [secretgen-controller > create] Executing\nWARNING  [secretgen-controller > create] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > prepare] Executing\n\nPLAY [Prepare] *****************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 18 May 2026  10:38:59 +0000 (0:00:00.032)       0:00:00.032 ************\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.\nok: [controller]\n\nTASK [Install Debian packages] *************************************************\nMonday 18 May 2026  10:39:01 +0000 (0:00:02.318)       0:00:02.350 ************\nok: [controller]\n\nPLAY [Configure Kubernetes VIP] ************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 18 May 2026  10:39:09 +0000 (0:00:07.249)       0:00:09.599 ************\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***\nMonday 18 May 2026  10:39:09 +0000 (0:00:00.848)       0:00:10.447 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************\nMonday 18 May 2026  10:39:10 +0000 (0:00:00.464)       0:00:10.912 ************\nok: [controller] => (item=/etc/keepalived/keepalived.conf)\nok: [controller] => (item=/etc/keepalived/check_apiserver.sh)\nok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)\nok: [controller] => (item=/etc/haproxy/haproxy.cfg)\nok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)\n\nTASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****\nMonday 18 May 2026  10:39:11 +0000 (0:00:01.477)       0:00:12.390 ************\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}\n[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3\n\n30     - Restart \"kubelet\" service\n31\n32 - name: Switch API server to run on port 6443\n     ^ column 3\n\nfailed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}\n...ignoring\n\nTASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********\nMonday 18 May 2026  10:39:12 +0000 (0:00:01.002)       0:00:13.392 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********\nMonday 18 May 2026  10:39:13 +0000 (0:00:00.440)       0:00:13.833 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************\nMonday 18 May 2026  10:39:13 +0000 (0:00:00.310)       0:00:14.144 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***\nMonday 18 May 2026  10:39:13 +0000 (0:00:00.033)       0:00:14.177 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************\nMonday 18 May 2026  10:39:13 +0000 (0:00:00.042)       0:00:14.220 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******\nMonday 18 May 2026  10:39:14 +0000 (0:00:00.987)       0:00:15.207 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************\nMonday 18 May 2026  10:39:15 +0000 (0:00:00.300)       0:00:15.508 ************\n\nPLAY [Install Kubernetes] ******************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 18 May 2026  10:39:15 +0000 (0:00:00.058)       0:00:15.566 ************\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:39:16 +0000 (0:00:00.911)       0:00:16.478 ************\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 18 May 2026  10:39:16 +0000 (0:00:00.437)       0:00:16.915 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 18 May 2026  10:39:16 +0000 (0:00:00.035)       0:00:16.951 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:16 +0000 (0:00:00.311)       0:00:17.262 ************\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] *******************\nMonday 18 May 2026  10:39:16 +0000 (0:00:00.093)       0:00:17.355 ************\n[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:39:17 +0000 (0:00:00.877)       0:00:18.233 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:39:17 +0000 (0:00:00.039)       0:00:18.273 ************\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 18 May 2026  10:39:18 +0000 (0:00:00.310)       0:00:18.583 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:19 +0000 (0:00:01.031)       0:00:19.614 ************\nok: [controller] => {\n    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.3/containerd-2.2.3-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:39:19 +0000 (0:00:00.079)       0:00:19.694 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:39:20 +0000 (0:00:01.072)       0:00:20.767 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 18 May 2026  10:39:23 +0000 (0:00:03.202)       0:00:23.970 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 18 May 2026  10:39:23 +0000 (0:00:00.023)       0:00:23.993 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 18 May 2026  10:39:23 +0000 (0:00:00.025)       0:00:24.019 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 18 May 2026  10:39:23 +0000 (0:00:00.025)       0:00:24.044 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 18 May 2026  10:39:30 +0000 (0:00:07.338)       0:00:31.383 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 18 May 2026  10:39:31 +0000 (0:00:00.757)       0:00:32.140 ************\nchanged: [controller] => (item={'path': '/etc/containerd'})\nchanged: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nchanged: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nMonday 18 May 2026  10:39:33 +0000 (0:00:01.487)       0:00:33.627 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 18 May 2026  10:39:33 +0000 (0:00:00.842)       0:00:34.469 ************\n\nRUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********\nMonday 18 May 2026  10:39:33 +0000 (0:00:00.005)       0:00:34.475 ************\nchanged: [controller]\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nMonday 18 May 2026  10:39:34 +0000 (0:00:00.871)       0:00:35.347 ************\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 18 May 2026  10:39:35 +0000 (0:00:00.954)       0:00:36.301 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***\nMonday 18 May 2026  10:39:36 +0000 (0:00:00.765)       0:00:37.067 ************\n[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000174457's Python /usr/bin/python3.12. 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 np0000174457's Python /usr/bin/python3.12. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.710)       0:00:37.777 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.038)       0:00:37.815 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.039)       0:00:37.854 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.040)       0:00:37.895 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.038)       0:00:37.933 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.044)       0:00:37.978 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.316)       0:00:38.294 ************\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:39:37 +0000 (0:00:00.049)       0:00:38.343 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:39:49 +0000 (0:00:11.683)       0:00:50.027 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:39:49 +0000 (0:00:00.041)       0:00:50.068 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:49 +0000 (0:00:00.336)       0:00:50.404 ************\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:39:49 +0000 (0:00:00.046)       0:00:50.451 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:39:51 +0000 (0:00:01.150)       0:00:51.602 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install SELinux packages] ***************\nMonday 18 May 2026  10:39:51 +0000 (0:00:00.048)       0:00:51.650 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***\nMonday 18 May 2026  10:39:51 +0000 (0:00:00.027)       0:00:51.677 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********\nMonday 18 May 2026  10:39:51 +0000 (0:00:00.035)       0:00:51.712 ************\nskipping: [controller]\n\nTASK [vexxhost.containers.containerd : Install AppArmor packages] **************\nMonday 18 May 2026  10:39:51 +0000 (0:00:00.037)       0:00:51.750 ************\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***\nMonday 18 May 2026  10:39:52 +0000 (0:00:01.114)       0:00:52.864 ************\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Create folders for configuration] *******\nMonday 18 May 2026  10:39:53 +0000 (0:00:00.690)       0:00:53.554 ************\nok: [controller] => (item={'path': '/etc/containerd'})\nok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})\nok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})\n\nTASK [vexxhost.containers.containerd : Create containerd config file] **********\nMonday 18 May 2026  10:39:54 +0000 (0:00:01.557)       0:00:55.111 ************\nok: [controller]\n\nTASK [vexxhost.containers.containerd : Force any restarts if necessary] ********\nMonday 18 May 2026  10:39:55 +0000 (0:00:00.808)       0:00:55.920 ************\n\nTASK [vexxhost.containers.containerd : Enable and start service] ***************\nMonday 18 May 2026  10:39:55 +0000 (0:00:00.005)       0:00:55.925 ************\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:39:55 +0000 (0:00:00.529)       0:00:56.455 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:56 +0000 (0:00:00.357)       0:00:56.812 ************\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:39:56 +0000 (0:00:00.067)       0:00:56.879 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:39:57 +0000 (0:00:00.879)       0:00:57.758 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:39:59 +0000 (0:00:01.732)       0:00:59.491 ************\nok: [controller] => {\n    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:39:59 +0000 (0:00:00.073)       0:00:59.564 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:40:00 +0000 (0:00:01.183)       0:01:00.747 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.cri_tools : Create crictl config] ********************\nMonday 18 May 2026  10:40:01 +0000 (0:00:01.720)       0:01:02.467 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********\nMonday 18 May 2026  10:40:02 +0000 (0:00:00.732)       0:01:03.200 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:40:03 +0000 (0:00:00.320)       0:01:03.520 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:40:03 +0000 (0:00:00.341)       0:01:03.861 ************\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] *******************\nMonday 18 May 2026  10:40:03 +0000 (0:00:00.070)       0:01:03.932 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:40:04 +0000 (0:00:01.190)       0:01:05.123 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***\nMonday 18 May 2026  10:40:07 +0000 (0:00:03.006)       0:01:08.129 ************\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)\n\nTASK [vexxhost.containers.cni_plugins : Install additional packages] ***********\nMonday 18 May 2026  10:40:07 +0000 (0:00:00.062)       0:01:08.192 ************\nok: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************\nMonday 18 May 2026  10:40:08 +0000 (0:00:01.252)       0:01:09.444 ************\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Importing 'to_native' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********\nMonday 18 May 2026  10:40:09 +0000 (0:00:00.518)       0:01:09.963 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******\nMonday 18 May 2026  10:40:10 +0000 (0:00:00.697)       0:01:10.660 ************\nchanged: [controller] => (item=br_netfilter)\nok: [controller] => (item=ip_tables)\nchanged: [controller] => (item=ip6_tables)\nchanged: [controller] => (item=nf_conntrack)\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:40:11 +0000 (0:00:01.435)       0:01:12.096 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:40:11 +0000 (0:00:00.342)       0:01:12.438 ************\nok: [controller] => {\n    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubelet\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:40:12 +0000 (0:00:00.041)       0:01:12.480 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:40:13 +0000 (0:00:01.928)       0:01:14.408 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***\nMonday 18 May 2026  10:40:13 +0000 (0:00:00.034)       0:01:14.442 ************\nok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)\n\nTASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************\nMonday 18 May 2026  10:40:14 +0000 (0:00:00.060)       0:01:14.503 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************\nMonday 18 May 2026  10:40:14 +0000 (0:00:00.028)       0:01:14.532 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************\nMonday 18 May 2026  10:40:18 +0000 (0:00:04.194)       0:01:18.727 ************\nchanged: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})\nchanged: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})\nchanged: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})\nchanged: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})\n\nTASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***\nMonday 18 May 2026  10:40:20 +0000 (0:00:02.316)       0:01:21.043 ************\nchanged: [controller] => (item=/etc/systemd/system/kubelet.service.d)\nok: [controller] => (item=/etc/kubernetes)\nok: [controller] => (item=/etc/kubernetes/manifests)\n\nTASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********\nMonday 18 May 2026  10:40:21 +0000 (0:00:00.901)       0:01:21.945 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***\nMonday 18 May 2026  10:40:22 +0000 (0:00:00.766)       0:01:22.711 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Check swap status] *************************\nMonday 18 May 2026  10:40:22 +0000 (0:00:00.743)       0:01:23.454 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************\nMonday 18 May 2026  10:40:23 +0000 (0:00:00.445)       0:01:23.900 ************\n[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.\n\nTask failed.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:86:7\n\n84       register: kubelet_swapon\n85\n86     - name: Disable swap\n         ^ column 7\n\n<<< caused by >>>\n\nConditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.\nOrigin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11\n\n89       ignore_errors: \"{{ ansible_check_mode }}\"\n90       when:\n91         - kubelet_swapon.stdout\n             ^ column 11\n\nBroken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.\n\nfatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.\"}\n...ignoring\n\nTASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********\nMonday 18 May 2026  10:40:23 +0000 (0:00:00.044)       0:01:23.944 ************\n[DEPRECATION WARNING]: Importing 'to_bytes' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.\n[DEPRECATION WARNING]: Passing `warnings` to `exit_json` or `fail_json` is deprecated. This feature will be removed from ansible-core version 2.23. Use `AnsibleModule.warn` instead.\nok: [controller] => (item=swap)\nok: [controller] => (item=none)\n\nTASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***\nMonday 18 May 2026  10:40:24 +0000 (0:00:00.884)       0:01:24.829 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************\nMonday 18 May 2026  10:40:25 +0000 (0:00:00.683)       0:01:25.513 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********\nMonday 18 May 2026  10:40:25 +0000 (0:00:00.741)       0:01:26.255 ************\n\nRUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************\nMonday 18 May 2026  10:40:25 +0000 (0:00:00.005)       0:01:26.260 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********\nMonday 18 May 2026  10:40:26 +0000 (0:00:00.967)       0:01:27.228 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****\nMonday 18 May 2026  10:40:27 +0000 (0:00:00.769)       0:01:27.997 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************\nMonday 18 May 2026  10:40:28 +0000 (0:00:01.434)       0:01:29.431 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********\nMonday 18 May 2026  10:40:29 +0000 (0:00:00.960)       0:01:30.392 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********\nMonday 18 May 2026  10:40:30 +0000 (0:00:00.440)       0:01:30.833 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************\nMonday 18 May 2026  10:40:30 +0000 (0:00:00.622)       0:01:31.456 ************\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.084)       0:01:31.540 ************\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller\n\nTASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.087)       0:01:31.628 ************\nok: [controller] => (item=controller)\n\nTASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.324)       0:01:31.952 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.045)       0:01:31.998 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.055)       0:01:32.053 ************\nok: [controller] => {\n    \"msg\": \"controller\"\n}\n\nTASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***\nMonday 18 May 2026  10:40:31 +0000 (0:00:00.044)       0:01:32.097 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.722)       0:01:32.819 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.854 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.033)       0:01:32.888 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.922 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.029)       0:01:32.952 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.986 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.033)       0:01:33.020 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************\nMonday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:33.054 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***\nMonday 18 May 2026  10:41:01 +0000 (0:00:29.116)       0:02:02.171 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************\nMonday 18 May 2026  10:41:02 +0000 (0:00:00.335)       0:02:02.506 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***\nMonday 18 May 2026  10:41:02 +0000 (0:00:00.033)       0:02:02.540 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***\nMonday 18 May 2026  10:41:02 +0000 (0:00:00.315)       0:02:02.855 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******\nMonday 18 May 2026  10:41:02 +0000 (0:00:00.318)       0:02:03.174 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************\nMonday 18 May 2026  10:41:02 +0000 (0:00:00.298)       0:02:03.472 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***\nMonday 18 May 2026  10:41:03 +0000 (0:00:00.039)       0:02:03.511 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************\nMonday 18 May 2026  10:41:03 +0000 (0:00:00.036)       0:02:03.548 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***\nMonday 18 May 2026  10:41:03 +0000 (0:00:00.035)       0:02:03.583 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***\nMonday 18 May 2026  10:41:12 +0000 (0:00:09.013)       0:02:12.597 ************\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.952)       0:02:13.549 ************\nskipping: [controller] => (item=DaemonSet)\nskipping: [controller] => (item=ConfigMap)\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.040)       0:02:13.590 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.039)       0:02:13.630 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.036)       0:02:13.666 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.038)       0:02:13.704 ************\nskipping: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.041)       0:02:13.745 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***\nMonday 18 May 2026  10:41:13 +0000 (0:00:00.547)       0:02:14.293 ************\nchanged: [controller]\n\nPLAY [Install control-plane components] ****************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 18 May 2026  10:41:14 +0000 (0:00:01.053)       0:02:15.347 ************\nok: [controller]\n\nTASK [vexxhost.containers.forget_package : Forget package] *********************\nMonday 18 May 2026  10:41:15 +0000 (0:00:00.914)       0:02:16.261 ************\nok: [controller]\n\nTASK [vexxhost.containers.package : Update state for tar] **********************\nMonday 18 May 2026  10:41:16 +0000 (0:00:00.320)       0:02:16.581 ************\nok: [controller]\n\nTASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***\nMonday 18 May 2026  10:41:17 +0000 (0:00:01.060)       0:02:17.642 ************\nok: [controller]\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:41:17 +0000 (0:00:00.340)       0:02:17.982 ************\nok: [controller] => {\n    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:41:17 +0000 (0:00:00.041)       0:02:18.023 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:41:18 +0000 (0:00:00.718)       0:02:18.742 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************\nMonday 18 May 2026  10:41:20 +0000 (0:00:01.764)       0:02:20.506 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************\nMonday 18 May 2026  10:41:20 +0000 (0:00:00.418)       0:02:20.924 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************\nMonday 18 May 2026  10:41:20 +0000 (0:00:00.300)       0:02:21.225 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***\nMonday 18 May 2026  10:41:21 +0000 (0:00:00.348)       0:02:21.574 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***\nMonday 18 May 2026  10:41:21 +0000 (0:00:00.319)       0:02:21.893 ************\nok: [controller]\n\nTASK [Install plugin] **********************************************************\nMonday 18 May 2026  10:41:21 +0000 (0:00:00.312)       0:02:22.205 ************\nincluded: vexxhost.containers.download_artifact for controller\n\nTASK [vexxhost.containers.download_artifact : Starting download of file] *******\nMonday 18 May 2026  10:41:21 +0000 (0:00:00.056)       0:02:22.261 ************\nok: [controller] => {\n    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"\n}\n\nTASK [vexxhost.containers.download_artifact : Download item] *******************\nMonday 18 May 2026  10:41:21 +0000 (0:00:00.033)       0:02:22.295 ************\nchanged: [controller]\n\nTASK [vexxhost.containers.download_artifact : Extract archive] *****************\nMonday 18 May 2026  10:41:22 +0000 (0:00:00.921)       0:02:23.216 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 18 May 2026  10:41:24 +0000 (0:00:02.158)       0:02:25.375 ************\n[DEPRECATION WARNING]: Importing 'to_text' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.\n[DEPRECATION WARNING]: The `ansible.module_utils.common._collections_compat` module is deprecated. This feature will be removed from ansible-core version 2.24. Use `collections.abc` from the Python standard library instead.\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nMonday 18 May 2026  10:41:24 +0000 (0:00:00.098)       0:02:25.474 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************\nMonday 18 May 2026  10:41:25 +0000 (0:00:00.840)       0:02:26.314 ************\nok: [controller]\n\nTASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************\nMonday 18 May 2026  10:41:26 +0000 (0:00:00.944)       0:02:27.258 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***\nMonday 18 May 2026  10:41:29 +0000 (0:00:02.286)       0:02:29.545 ************\nincluded: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller\n\nTASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************\nMonday 18 May 2026  10:41:29 +0000 (0:00:00.035)       0:02:29.581 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************\nMonday 18 May 2026  10:41:29 +0000 (0:00:00.672)       0:02:30.254 ************\nchanged: [controller]\n\nTASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************\nMonday 18 May 2026  10:41:59 +0000 (0:00:29.961)       0:03:00.215 ************\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=118  changed=54   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3\n\n\nTASKS RECAP ********************************************************************\nMonday 18 May 2026  10:42:00 +0000 (0:00:00.881)       0:03:01.097 ************\n===============================================================================\nvexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 29.96s\nvexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 29.12s\nvexxhost.containers.download_artifact : Download item ------------------ 11.68s\nvexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 9.01s\nvexxhost.containers.containerd : Install AppArmor packages -------------- 7.34s\nInstall Debian packages ------------------------------------------------- 7.25s\nvexxhost.kubernetes.kubelet : Install additional packages --------------- 4.19s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.20s\nvexxhost.containers.download_artifact : Extract archive ----------------- 3.01s\nGathering Facts --------------------------------------------------------- 2.32s\nvexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.32s\nvexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.29s\nvexxhost.containers.download_artifact : Extract archive ----------------- 2.16s\nvexxhost.containers.download_artifact : Download item ------------------- 1.93s\nvexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.92s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.76s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.73s\nvexxhost.containers.download_artifact : Extract archive ----------------- 1.72s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.56s\nvexxhost.containers.containerd : Create folders for configuration ------- 1.49s\nINFO     [secretgen-controller > prepare] Executed: Successful\nINFO     [secretgen-controller > converge] Executing\n\nPLAY [Deploy \"secretgen-controller\"] *******************************************\n\nTASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****\nMonday 18 May 2026  10:42:01 +0000 (0:00:00.015)       0:00:00.015 ************\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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.\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.\nchanged: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 18 May 2026  10:42:03 +0000 (0:00:01.769)       0:00:01.785 ************\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.77s\nINFO     [secretgen-controller > converge] Executed: Successful\nINFO     [secretgen-controller > idempotence] Executing\n\nPLAY [Deploy \"secretgen-controller\"] *******************************************\n\nTASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****\nMonday 18 May 2026  10:42:04 +0000 (0:00:00.015)       0:00:00.015 ************\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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.\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\n[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.\n[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 18 May 2026  10:42:06 +0000 (0:00:01.441)       0:00:01.457 ************\n===============================================================================\natmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.44s\nINFO     [secretgen-controller > idempotence] Executed: Successful\nINFO     [secretgen-controller > side_effect] Executing\nWARNING  [secretgen-controller > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > verify] Executing\n\nPLAY [Verify] ******************************************************************\n\nTASK [Gathering Facts] *********************************************************\nMonday 18 May 2026  10:42:07 +0000 (0:00:00.011)       0:00:00.011 ************\n[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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 [Wait for secretgen-controller deployment to be available] ****************\nMonday 18 May 2026  10:42:08 +0000 (0:00:01.339)       0:00:01.351 ************\n[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.\nok: [controller]\n\nTASK [Create a test Password resource] *****************************************\nMonday 18 May 2026  10:42:09 +0000 (0:00:01.010)       0:00:02.361 ************\nchanged: [controller]\n\nTASK [Wait for test-password secret to be generated] ***************************\nMonday 18 May 2026  10:42:10 +0000 (0:00:01.046)       0:00:03.408 ************\nok: [controller]\n\nPLAY RECAP *********************************************************************\ncontroller                 : ok=4    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0\n\n\nTASKS RECAP ********************************************************************\nMonday 18 May 2026  10:42:11 +0000 (0:00:00.903)       0:00:04.312 ************\n===============================================================================\nGathering Facts --------------------------------------------------------- 1.34s\nCreate a test Password resource ----------------------------------------- 1.05s\nWait for secretgen-controller deployment to be available ---------------- 1.01s\nWait for test-password secret to be generated --------------------------- 0.90s\nINFO     [secretgen-controller > verify] Executed: Successful\nINFO     [secretgen-controller > cleanup] Executing\nWARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)\nINFO     [secretgen-controller > destroy] Executing\nWARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.\nINFO     [secretgen-controller > destroy] Executed: Successful\nWARNING  Molecule executed 1 scenario (1 missing files)",
                            "stdout_lines": [
                                "Using CPython 3.12.3 interpreter at: /usr/bin/python3",
                                "Creating virtual environment at: .venv",
                                "warning: No `requires-python` value found in the workspace. Defaulting to `>=3.12`.",
                                "Downloading pygments (1.2MiB)",
                                "Downloading kubernetes (1.9MiB)",
                                "Downloading ansible-core (2.3MiB)",
                                "Downloading cryptography (4.5MiB)",
                                " Downloading cryptography",
                                " Downloading pygments",
                                " Downloading kubernetes",
                                " Downloading ansible-core",
                                "Installed 41 packages in 48ms",
                                "INFO     Collection 'atmosphere.common' detected.",
                                "INFO     Scenarios will be used from 'extensions/molecule'",
                                "INFO     [secretgen-controller > discovery] scenario test matrix: dependency, cleanup, destroy, syntax, create, prepare, converge, idempotence, side_effect, verify, cleanup, destroy",
                                "INFO     [secretgen-controller > prerun] Performing prerun with role_name_check=0...",
                                "INFO     [secretgen-controller > dependency] Executing",
                                "WARNING  [secretgen-controller > dependency] Missing roles requirements file: requirements.yml",
                                "WARNING  [secretgen-controller > dependency] Missing collections requirements file: collections.yml",
                                "WARNING  [secretgen-controller > dependency] Executed: 2 missing (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > cleanup] Executing",
                                "WARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > destroy] Executing",
                                "WARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [secretgen-controller > destroy] Executed: Successful",
                                "INFO     [secretgen-controller > syntax] Executing",
                                "",
                                "playbook: /home/zuul/src/github.com/vexxhost/atmosphere.common/extensions/molecule/secretgen-controller/converge.yml",
                                "INFO     [secretgen-controller > syntax] Executed: Successful",
                                "INFO     [secretgen-controller > create] Executing",
                                "WARNING  [secretgen-controller > create] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > prepare] Executing",
                                "",
                                "PLAY [Prepare] *****************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 18 May 2026  10:38:59 +0000 (0:00:00.032)       0:00:00.032 ************",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', but future installation of another Python interpreter could cause a different interpreter to be discovered. See https://docs.ansible.com/ansible-core/2.20/reference_appendices/interpreter_discovery.html for more information.",
                                "ok: [controller]",
                                "",
                                "TASK [Install Debian packages] *************************************************",
                                "Monday 18 May 2026  10:39:01 +0000 (0:00:02.318)       0:00:02.350 ************",
                                "ok: [controller]",
                                "",
                                "PLAY [Configure Kubernetes VIP] ************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 18 May 2026  10:39:09 +0000 (0:00:07.249)       0:00:09.599 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/etc/kubernetes/manifests)] ***",
                                "Monday 18 May 2026  10:39:09 +0000 (0:00:00.848)       0:00:10.447 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Uninstall legacy HA stack] ****************",
                                "Monday 18 May 2026  10:39:10 +0000 (0:00:00.464)       0:00:10.912 ************",
                                "ok: [controller] => (item=/etc/keepalived/keepalived.conf)",
                                "ok: [controller] => (item=/etc/keepalived/check_apiserver.sh)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/keepalived.yaml)",
                                "ok: [controller] => (item=/etc/haproxy/haproxy.cfg)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests/haproxy.yaml)",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Switch API server to run on port 6443] ****",
                                "Monday 18 May 2026  10:39:11 +0000 (0:00:01.477)       0:00:12.390 ************",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/manifests/kube-apiserver.yaml) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/manifests/kube-apiserver.yaml\", \"msg\": \"Path /etc/kubernetes/manifests/kube-apiserver.yaml does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/controller-manager.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/controller-manager.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/controller-manager.conf\", \"msg\": \"Path /etc/kubernetes/controller-manager.conf does not exist !\", \"rc\": 257}",
                                "[ERROR]: Task failed: Module failed: Path /etc/kubernetes/scheduler.conf does not exist !",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kube_vip/tasks/main.yml:32:3",
                                "",
                                "30     - Restart \"kubelet\" service",
                                "31",
                                "32 - name: Switch API server to run on port 6443",
                                "     ^ column 3",
                                "",
                                "failed: [controller] (item=/etc/kubernetes/scheduler.conf) => {\"ansible_loop_var\": \"item\", \"changed\": false, \"item\": \"/etc/kubernetes/scheduler.conf\", \"msg\": \"Path /etc/kubernetes/scheduler.conf does not exist !\", \"rc\": 257}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if super-admin.conf exists] *********",
                                "Monday 18 May 2026  10:39:12 +0000 (0:00:01.002)       0:00:13.392 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Check if kubeadm has already run] *********",
                                "Monday 18 May 2026  10:39:13 +0000 (0:00:00.440)       0:00:13.833 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path] ************",
                                "Monday 18 May 2026  10:39:13 +0000 (0:00:00.310)       0:00:14.144 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Set fact with KUBECONFIG path (with super-admin.conf)] ***",
                                "Monday 18 May 2026  10:39:13 +0000 (0:00:00.033)       0:00:14.177 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Upload Kubernetes manifest] ***************",
                                "Monday 18 May 2026  10:39:13 +0000 (0:00:00.042)       0:00:14.220 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Ensure kube-vip configuration file] *******",
                                "Monday 18 May 2026  10:39:14 +0000 (0:00:00.987)       0:00:15.207 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kube_vip : Flush handlers] ***************************",
                                "Monday 18 May 2026  10:39:15 +0000 (0:00:00.300)       0:00:15.508 ************",
                                "",
                                "PLAY [Install Kubernetes] ******************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 18 May 2026  10:39:15 +0000 (0:00:00.058)       0:00:15.566 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:39:16 +0000 (0:00:00.911)       0:00:16.478 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 18 May 2026  10:39:16 +0000 (0:00:00.437)       0:00:16.915 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 18 May 2026  10:39:16 +0000 (0:00:00.035)       0:00:16.951 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:16 +0000 (0:00:00.311)       0:00:17.262 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/opencontainers/runc/releases/download/v1.4.2/runc.amd64\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:16 +0000 (0:00:00.093)       0:00:17.355 ************",
                                "[WARNING]: Module remote_tmp /root/.ansible/tmp did not exist and was created with a mode of 0700, this may cause issues when running as another user. To avoid this, create the remote_tmp dir with the correct permissions manually",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:39:17 +0000 (0:00:00.877)       0:00:18.233 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:39:17 +0000 (0:00:00.039)       0:00:18.273 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 18 May 2026  10:39:18 +0000 (0:00:00.310)       0:00:18.583 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:19 +0000 (0:00:01.031)       0:00:19.614 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/containerd/containerd/releases/download/v2.2.3/containerd-2.2.3-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:19 +0000 (0:00:00.079)       0:00:19.694 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:39:20 +0000 (0:00:01.072)       0:00:20.767 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 18 May 2026  10:39:23 +0000 (0:00:03.202)       0:00:23.970 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 18 May 2026  10:39:23 +0000 (0:00:00.023)       0:00:23.993 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 18 May 2026  10:39:23 +0000 (0:00:00.025)       0:00:24.019 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 18 May 2026  10:39:23 +0000 (0:00:00.025)       0:00:24.044 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 18 May 2026  10:39:30 +0000 (0:00:07.338)       0:00:31.383 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 18 May 2026  10:39:31 +0000 (0:00:00.757)       0:00:32.140 ************",
                                "changed: [controller] => (item={'path': '/etc/containerd'})",
                                "changed: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "changed: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Monday 18 May 2026  10:39:33 +0000 (0:00:01.487)       0:00:33.627 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 18 May 2026  10:39:33 +0000 (0:00:00.842)       0:00:34.469 ************",
                                "",
                                "RUNNING HANDLER [vexxhost.containers.containerd : Restart containerd] **********",
                                "Monday 18 May 2026  10:39:33 +0000 (0:00:00.005)       0:00:34.475 ************",
                                "changed: [controller]",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Monday 18 May 2026  10:39:34 +0000 (0:00:00.871)       0:00:35.347 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 18 May 2026  10:39:35 +0000 (0:00:00.954)       0:00:36.301 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the \"kubeadm-config\" ConfigMap] ***",
                                "Monday 18 May 2026  10:39:36 +0000 (0:00:00.765)       0:00:37.067 ************",
                                "[ERROR]: Task failed: Module failed: Failed to import the required Python library (kubernetes) on np0000174457's Python /usr/bin/python3.12. 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 np0000174457's Python /usr/bin/python3.12. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Parse the ClusterConfiguration] ***",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.710)       0:00:37.777 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Retrieve the current Kubernetes version] ***",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.038)       0:00:37.815 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Extract major, minor, and patch versions] ***",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.039)       0:00:37.854 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Fail if we're jumping more than one minor version] ***",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.040)       0:00:37.895 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes_upgrade_check : Set fact if we need to upgrade] ***",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.038)       0:00:37.933 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.044)       0:00:37.978 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.316)       0:00:38.294 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubeadm\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:37 +0000 (0:00:00.049)       0:00:38.343 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:39:49 +0000 (0:00:11.683)       0:00:50.027 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:39:49 +0000 (0:00:00.041)       0:00:50.068 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:49 +0000 (0:00:00.336)       0:00:50.404 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubectl\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:49 +0000 (0:00:00.046)       0:00:50.451 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:39:51 +0000 (0:00:01.150)       0:00:51.602 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install SELinux packages] ***************",
                                "Monday 18 May 2026  10:39:51 +0000 (0:00:00.048)       0:00:51.650 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Set SELinux to permissive at runtime] ***",
                                "Monday 18 May 2026  10:39:51 +0000 (0:00:00.027)       0:00:51.677 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Persist SELinux permissive mode] ********",
                                "Monday 18 May 2026  10:39:51 +0000 (0:00:00.035)       0:00:51.712 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Install AppArmor packages] **************",
                                "Monday 18 May 2026  10:39:51 +0000 (0:00:00.037)       0:00:51.750 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create systemd service file for containerd] ***",
                                "Monday 18 May 2026  10:39:52 +0000 (0:00:01.114)       0:00:52.864 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Create folders for configuration] *******",
                                "Monday 18 May 2026  10:39:53 +0000 (0:00:00.690)       0:00:53.554 ************",
                                "ok: [controller] => (item={'path': '/etc/containerd'})",
                                "ok: [controller] => (item={'path': '/var/lib/containerd', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd', 'mode': '0o711'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.grpc.v1.cri', 'mode': '0o700'})",
                                "ok: [controller] => (item={'path': '/run/containerd/io.containerd.sandbox.controller.v1.shim', 'mode': '0o700'})",
                                "",
                                "TASK [vexxhost.containers.containerd : Create containerd config file] **********",
                                "Monday 18 May 2026  10:39:54 +0000 (0:00:01.557)       0:00:55.111 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.containerd : Force any restarts if necessary] ********",
                                "Monday 18 May 2026  10:39:55 +0000 (0:00:00.808)       0:00:55.920 ************",
                                "",
                                "TASK [vexxhost.containers.containerd : Enable and start service] ***************",
                                "Monday 18 May 2026  10:39:55 +0000 (0:00:00.005)       0:00:55.925 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:39:55 +0000 (0:00:00.529)       0:00:56.455 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:56 +0000 (0:00:00.357)       0:00:56.812 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/crictl-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:56 +0000 (0:00:00.067)       0:00:56.879 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:39:57 +0000 (0:00:00.879)       0:00:57.758 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:39:59 +0000 (0:00:01.732)       0:00:59.491 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.35.0/critest-v1.35.0-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:39:59 +0000 (0:00:00.073)       0:00:59.564 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:40:00 +0000 (0:00:01.183)       0:01:00.747 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cri_tools : Create crictl config] ********************",
                                "Monday 18 May 2026  10:40:01 +0000 (0:00:01.720)       0:01:02.467 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/opt/cni/bin)] *********",
                                "Monday 18 May 2026  10:40:02 +0000 (0:00:00.732)       0:01:03.200 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:40:03 +0000 (0:00:00.320)       0:01:03.520 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:40:03 +0000 (0:00:00.341)       0:01:03.861 ************",
                                "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] *******************",
                                "Monday 18 May 2026  10:40:03 +0000 (0:00:00.070)       0:01:03.932 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:40:04 +0000 (0:00:01.190)       0:01:05.123 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Gather variables for each operating system] ***",
                                "Monday 18 May 2026  10:40:07 +0000 (0:00:03.006)       0:01:08.129 ************",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/containers/roles/cni_plugins/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Install additional packages] ***********",
                                "Monday 18 May 2026  10:40:07 +0000 (0:00:00.062)       0:01:08.192 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Ensure IPv6 is enabled] ****************",
                                "Monday 18 May 2026  10:40:08 +0000 (0:00:01.252)       0:01:09.444 ************",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Importing 'to_native' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules on-boot] *********",
                                "Monday 18 May 2026  10:40:09 +0000 (0:00:00.518)       0:01:09.963 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.cni_plugins : Enable kernel modules in runtime] ******",
                                "Monday 18 May 2026  10:40:10 +0000 (0:00:00.697)       0:01:10.660 ************",
                                "changed: [controller] => (item=br_netfilter)",
                                "ok: [controller] => (item=ip_tables)",
                                "changed: [controller] => (item=ip6_tables)",
                                "changed: [controller] => (item=nf_conntrack)",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:40:11 +0000 (0:00:01.435)       0:01:12.096 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:40:11 +0000 (0:00:00.342)       0:01:12.438 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://dl.k8s.io/release/v1.28.13/bin/linux/amd64/kubelet\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:40:12 +0000 (0:00:00.041)       0:01:12.480 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:40:13 +0000 (0:00:01.928)       0:01:14.408 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Gather variables for each operating system] ***",
                                "Monday 18 May 2026  10:40:13 +0000 (0:00:00.034)       0:01:14.442 ************",
                                "ok: [controller] => (item=/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/vars/debian.yml)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install coreutils] *************************",
                                "Monday 18 May 2026  10:40:14 +0000 (0:00:00.060)       0:01:14.503 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Install additional packages] ***************",
                                "Monday 18 May 2026  10:40:14 +0000 (0:00:00.028)       0:01:14.532 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure sysctl values] *******************",
                                "Monday 18 May 2026  10:40:18 +0000 (0:00:04.194)       0:01:18.727 ************",
                                "changed: [controller] => (item={'name': 'net.ipv4.ip_forward', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-iptables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.bridge.bridge-nf-call-ip6tables', 'value': 1})",
                                "changed: [controller] => (item={'name': 'net.ipv4.conf.all.rp_filter', 'value': 0})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_queued_events', 'value': 1048576})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_instances', 'value': 8192})",
                                "changed: [controller] => (item={'name': 'fs.inotify.max_user_watches', 'value': 1048576})",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create folders for kubernetes configuration] ***",
                                "Monday 18 May 2026  10:40:20 +0000 (0:00:02.316)       0:01:21.043 ************",
                                "changed: [controller] => (item=/etc/systemd/system/kubelet.service.d)",
                                "ok: [controller] => (item=/etc/kubernetes)",
                                "ok: [controller] => (item=/etc/kubernetes/manifests)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubelet systemd service config] ********",
                                "Monday 18 May 2026  10:40:21 +0000 (0:00:00.901)       0:01:21.945 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Add kubeadm dropin for kubelet systemd service config] ***",
                                "Monday 18 May 2026  10:40:22 +0000 (0:00:00.766)       0:01:22.711 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Check swap status] *************************",
                                "Monday 18 May 2026  10:40:22 +0000 (0:00:00.743)       0:01:23.454 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Disable swap] ******************************",
                                "Monday 18 May 2026  10:40:23 +0000 (0:00:00.445)       0:01:23.900 ************",
                                "[ERROR]: Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.",
                                "",
                                "Task failed.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:86:7",
                                "",
                                "84       register: kubelet_swapon",
                                "85",
                                "86     - name: Disable swap",
                                "         ^ column 7",
                                "",
                                "<<< caused by >>>",
                                "",
                                "Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.",
                                "Origin: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11",
                                "",
                                "89       ignore_errors: \"{{ ansible_check_mode }}\"",
                                "90       when:",
                                "91         - kubelet_swapon.stdout",
                                "             ^ column 11",
                                "",
                                "Broken conditionals can be temporarily allowed with the `ALLOW_BROKEN_CONDITIONALS` configuration option.",
                                "",
                                "fatal: [controller]: FAILED! => {\"changed\": false, \"msg\": \"Task failed: Conditional result (False) was derived from value of type 'str' at '/home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubelet/tasks/main.yml:91:11'. Conditionals must have a boolean result.\"}",
                                "...ignoring",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Remove swapfile from /etc/fstab] ***********",
                                "Monday 18 May 2026  10:40:23 +0000 (0:00:00.044)       0:01:23.944 ************",
                                "[DEPRECATION WARNING]: Importing 'to_bytes' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.",
                                "[DEPRECATION WARNING]: Passing `warnings` to `exit_json` or `fail_json` is deprecated. This feature will be removed from ansible-core version 2.23. Use `AnsibleModule.warn` instead.",
                                "ok: [controller] => (item=swap)",
                                "ok: [controller] => (item=none)",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Create noswap systemd service config file] ***",
                                "Monday 18 May 2026  10:40:24 +0000 (0:00:00.884)       0:01:24.829 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable noswap service] *********************",
                                "Monday 18 May 2026  10:40:25 +0000 (0:00:00.683)       0:01:25.513 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Force any restarts if necessary] ***********",
                                "Monday 18 May 2026  10:40:25 +0000 (0:00:00.741)       0:01:26.255 ************",
                                "",
                                "RUNNING HANDLER [vexxhost.kubernetes.kubelet : Reload systemd] *****************",
                                "Monday 18 May 2026  10:40:25 +0000 (0:00:00.005)       0:01:26.260 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Enable and start kubelet service] **********",
                                "Monday 18 May 2026  10:40:26 +0000 (0:00:00.967)       0:01:27.228 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure availability of dbus on Debian] *****",
                                "Monday 18 May 2026  10:40:27 +0000 (0:00:00.769)       0:01:27.997 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Configure short hostname] ******************",
                                "Monday 18 May 2026  10:40:28 +0000 (0:00:01.434)       0:01:29.431 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubelet : Ensure hostname inside hosts file] *********",
                                "Monday 18 May 2026  10:40:29 +0000 (0:00:00.960)       0:01:30.392 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kubernetes repository] ***********",
                                "Monday 18 May 2026  10:40:30 +0000 (0:00:00.440)       0:01:30.833 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup control plane] ********************",
                                "Monday 18 May 2026  10:40:30 +0000 (0:00:00.622)       0:01:31.456 ************",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/control-plane.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Bootstrap cluster] **********************",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.084)       0:01:31.540 ************",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/kubernetes/tasks/bootstrap-cluster.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if any control plane is bootstrapped] ***",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.087)       0:01:31.628 ************",
                                "ok: [controller] => (item=controller)",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Pick node from pre-existing cluster] ****",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.324)       0:01:31.952 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Select first node to initialize cluster] ***",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.045)       0:01:31.998 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Print selected bootstrap node] **********",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.055)       0:01:32.053 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"controller\"",
                                "}",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upload cluster configuration for bootstrap node] ***",
                                "Monday 18 May 2026  10:40:31 +0000 (0:00:00.044)       0:01:32.097 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create pki folder] **********************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.722)       0:01:32.819 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca key] ***************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.854 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create kubernetes ca cert] **************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.033)       0:01:32.888 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca key] *********************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.922 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create etcd-ca cert] ********************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.029)       0:01:32.952 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca key] **************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:32.986 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create front-proxy-ca cert] *************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.033)       0:01:33.020 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Initialize cluster] *********************",
                                "Monday 18 May 2026  10:40:32 +0000 (0:00:00.034)       0:01:33.054 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the node is already part of the cluster] ***",
                                "Monday 18 May 2026  10:41:01 +0000 (0:00:29.116)       0:02:02.171 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Join cluster] ***************************",
                                "Monday 18 May 2026  10:41:02 +0000 (0:00:00.335)       0:02:02.506 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Create folder for admin configuration] ***",
                                "Monday 18 May 2026  10:41:02 +0000 (0:00:00.033)       0:02:02.540 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Creating a symlink for admin configuration file] ***",
                                "Monday 18 May 2026  10:41:02 +0000 (0:00:00.315)       0:02:02.855 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Add bash autocomplete for kubectl] ******",
                                "Monday 18 May 2026  10:41:02 +0000 (0:00:00.318)       0:02:03.174 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install PIP] ****************************",
                                "Monday 18 May 2026  10:41:02 +0000 (0:00:00.298)       0:02:03.472 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using pip on supported systems] ***",
                                "Monday 18 May 2026  10:41:03 +0000 (0:00:00.039)       0:02:03.511 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Enable EPEL repository] *****************",
                                "Monday 18 May 2026  10:41:03 +0000 (0:00:00.036)       0:02:03.548 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems] ***",
                                "Monday 18 May 2026  10:41:03 +0000 (0:00:00.035)       0:02:03.583 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Allow workload on control plane node] ***",
                                "Monday 18 May 2026  10:41:12 +0000 (0:00:09.013)       0:02:12.597 ************",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Remove kube-proxy resources] ************",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.952)       0:02:13.549 ************",
                                "skipping: [controller] => (item=DaemonSet)",
                                "skipping: [controller] => (item=ConfigMap)",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Start an upgrade] ***********************",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.040)       0:02:13.590 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Check if the Kubernetes API services is up to date] ***",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.039)       0:02:13.630 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Trigger an upgrade of the Kubernetes API services] ***",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.036)       0:02:13.666 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Setup nodes] ****************************",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.038)       0:02:13.704 ************",
                                "skipping: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Upgrade & restart Kubelet node for upgrade (if needed)] ***",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.041)       0:02:13.745 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.kubernetes : Set node selector for CoreDNS components] ***",
                                "Monday 18 May 2026  10:41:13 +0000 (0:00:00.547)       0:02:14.293 ************",
                                "changed: [controller]",
                                "",
                                "PLAY [Install control-plane components] ****************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 18 May 2026  10:41:14 +0000 (0:00:01.053)       0:02:15.347 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.forget_package : Forget package] *********************",
                                "Monday 18 May 2026  10:41:15 +0000 (0:00:00.914)       0:02:16.261 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.package : Update state for tar] **********************",
                                "Monday 18 May 2026  10:41:16 +0000 (0:00:00.320)       0:02:16.581 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.directory : Create directory (/var/lib/downloads)] ***",
                                "Monday 18 May 2026  10:41:17 +0000 (0:00:01.060)       0:02:17.642 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:41:17 +0000 (0:00:00.340)       0:02:17.982 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://get.helm.sh/helm-v3.11.2-linux-amd64.tar.gz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:41:17 +0000 (0:00:00.041)       0:02:18.023 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:41:18 +0000 (0:00:00.718)       0:02:18.742 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm repository] ***********************",
                                "Monday 18 May 2026  10:41:20 +0000 (0:00:01.764)       0:02:20.506 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Add bash autocomplete for helm] ***************",
                                "Monday 18 May 2026  10:41:20 +0000 (0:00:00.418)       0:02:20.924 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Get Helm plugins dir] *************************",
                                "Monday 18 May 2026  10:41:20 +0000 (0:00:00.300)       0:02:21.225 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Create Helm plugins directory if it does not exist] ***",
                                "Monday 18 May 2026  10:41:21 +0000 (0:00:00.348)       0:02:21.574 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.helm : Remove Helm diff plugin installed by kubernetes.core.helm_plugin] ***",
                                "Monday 18 May 2026  10:41:21 +0000 (0:00:00.319)       0:02:21.893 ************",
                                "ok: [controller]",
                                "",
                                "TASK [Install plugin] **********************************************************",
                                "Monday 18 May 2026  10:41:21 +0000 (0:00:00.312)       0:02:22.205 ************",
                                "included: vexxhost.containers.download_artifact for controller",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Starting download of file] *******",
                                "Monday 18 May 2026  10:41:21 +0000 (0:00:00.056)       0:02:22.261 ************",
                                "ok: [controller] => {",
                                "    \"msg\": \"https://github.com/databus23/helm-diff/releases/download/v3.8.1/helm-diff-linux-amd64.tgz\"",
                                "}",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Download item] *******************",
                                "Monday 18 May 2026  10:41:21 +0000 (0:00:00.033)       0:02:22.295 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.containers.download_artifact : Extract archive] *****************",
                                "Monday 18 May 2026  10:41:22 +0000 (0:00:00.921)       0:02:23.216 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 18 May 2026  10:41:24 +0000 (0:00:02.158)       0:02:25.375 ************",
                                "[DEPRECATION WARNING]: Importing 'to_text' from 'ansible.module_utils._text' is deprecated. This feature will be removed from ansible-core version 2.24. Use ansible.module_utils.common.text.converters instead.",
                                "[DEPRECATION WARNING]: The `ansible.module_utils.common._collections_compat` module is deprecated. This feature will be removed from ansible-core version 2.24. Use `collections.abc` from the Python standard library instead.",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Monday 18 May 2026  10:41:24 +0000 (0:00:00.098)       0:02:25.474 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Get current Kubernetes version] *************",
                                "Monday 18 May 2026  10:41:25 +0000 (0:00:00.840)       0:02:26.314 ************",
                                "ok: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.cilium : Deploy Helm chart] **************************",
                                "Monday 18 May 2026  10:41:26 +0000 (0:00:00.944)       0:02:27.258 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Include help chart upload method tasks] ***",
                                "Monday 18 May 2026  10:41:29 +0000 (0:00:02.286)       0:02:29.545 ************",
                                "included: /home/zuul/.ansible/collections/ansible_collections/vexxhost/kubernetes/roles/upload_helm_chart/tasks/synchronize.yml for controller",
                                "",
                                "TASK [vexxhost.kubernetes.upload_helm_chart : Upload Helm chart] ***************",
                                "Monday 18 May 2026  10:41:29 +0000 (0:00:00.035)       0:02:29.581 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Deploy Helm chart] *******************",
                                "Monday 18 May 2026  10:41:29 +0000 (0:00:00.672)       0:02:30.254 ************",
                                "changed: [controller]",
                                "",
                                "TASK [vexxhost.kubernetes.envoy_gateway : Create GatewayClass] *****************",
                                "Monday 18 May 2026  10:41:59 +0000 (0:00:29.961)       0:03:00.215 ************",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=118  changed=54   unreachable=0    failed=0    skipped=34   rescued=0    ignored=3",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 18 May 2026  10:42:00 +0000 (0:00:00.881)       0:03:01.097 ************",
                                "===============================================================================",
                                "vexxhost.kubernetes.envoy_gateway : Deploy Helm chart ------------------ 29.96s",
                                "vexxhost.kubernetes.kubernetes : Initialize cluster -------------------- 29.12s",
                                "vexxhost.containers.download_artifact : Download item ------------------ 11.68s",
                                "vexxhost.kubernetes.kubernetes : Install Kubernetes Python package using package manager on supported systems --- 9.01s",
                                "vexxhost.containers.containerd : Install AppArmor packages -------------- 7.34s",
                                "Install Debian packages ------------------------------------------------- 7.25s",
                                "vexxhost.kubernetes.kubelet : Install additional packages --------------- 4.19s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.20s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 3.01s",
                                "Gathering Facts --------------------------------------------------------- 2.32s",
                                "vexxhost.kubernetes.kubelet : Configure sysctl values ------------------- 2.32s",
                                "vexxhost.kubernetes.cilium : Deploy Helm chart -------------------------- 2.29s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 2.16s",
                                "vexxhost.containers.download_artifact : Download item ------------------- 1.93s",
                                "vexxhost.kubernetes.kubelet : Reload systemd ---------------------------- 1.92s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.76s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.73s",
                                "vexxhost.containers.download_artifact : Extract archive ----------------- 1.72s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.56s",
                                "vexxhost.containers.containerd : Create folders for configuration ------- 1.49s",
                                "INFO     [secretgen-controller > prepare] Executed: Successful",
                                "INFO     [secretgen-controller > converge] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Monday 18 May 2026  10:42:01 +0000 (0:00:00.015)       0:00:00.015 ************",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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.",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.",
                                "changed: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 18 May 2026  10:42:03 +0000 (0:00:01.769)       0:00:01.785 ************",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.77s",
                                "INFO     [secretgen-controller > converge] Executed: Successful",
                                "INFO     [secretgen-controller > idempotence] Executing",
                                "",
                                "PLAY [Deploy \"secretgen-controller\"] *******************************************",
                                "",
                                "TASK [atmosphere.common.secretgen_controller : Deploy secretgen-controller] ****",
                                "Monday 18 May 2026  10:42:04 +0000 (0:00:00.015)       0:00:00.015 ************",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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.",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "[WARNING]: Deprecation warnings can be disabled by setting `deprecation_warnings=False` in ansible.cfg.",
                                "[DEPRECATION WARNING]: Direct access to the `environment` attribute is deprecated. This feature will be removed from ansible-core version 2.23. Consider using `copy_with_new_env` or passing `overrides` to `template`.",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 18 May 2026  10:42:06 +0000 (0:00:01.441)       0:00:01.457 ************",
                                "===============================================================================",
                                "atmosphere.common.secretgen_controller : Deploy secretgen-controller ---- 1.44s",
                                "INFO     [secretgen-controller > idempotence] Executed: Successful",
                                "INFO     [secretgen-controller > side_effect] Executing",
                                "WARNING  [secretgen-controller > side_effect] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > verify] Executing",
                                "",
                                "PLAY [Verify] ******************************************************************",
                                "",
                                "TASK [Gathering Facts] *********************************************************",
                                "Monday 18 May 2026  10:42:07 +0000 (0:00:00.011)       0:00:00.011 ************",
                                "[WARNING]: Host 'controller' is using the discovered Python interpreter at '/usr/bin/python3.12', 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 [Wait for secretgen-controller deployment to be available] ****************",
                                "Monday 18 May 2026  10:42:08 +0000 (0:00:01.339)       0:00:01.351 ************",
                                "[WARNING]: kubernetes<24.2.0 is not supported or tested. Some features may not work.",
                                "ok: [controller]",
                                "",
                                "TASK [Create a test Password resource] *****************************************",
                                "Monday 18 May 2026  10:42:09 +0000 (0:00:01.010)       0:00:02.361 ************",
                                "changed: [controller]",
                                "",
                                "TASK [Wait for test-password secret to be generated] ***************************",
                                "Monday 18 May 2026  10:42:10 +0000 (0:00:01.046)       0:00:03.408 ************",
                                "ok: [controller]",
                                "",
                                "PLAY RECAP *********************************************************************",
                                "controller                 : ok=4    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0",
                                "",
                                "",
                                "TASKS RECAP ********************************************************************",
                                "Monday 18 May 2026  10:42:11 +0000 (0:00:00.903)       0:00:04.312 ************",
                                "===============================================================================",
                                "Gathering Facts --------------------------------------------------------- 1.34s",
                                "Create a test Password resource ----------------------------------------- 1.05s",
                                "Wait for secretgen-controller deployment to be available ---------------- 1.01s",
                                "Wait for test-password secret to be generated --------------------------- 0.90s",
                                "INFO     [secretgen-controller > verify] Executed: Successful",
                                "INFO     [secretgen-controller > cleanup] Executing",
                                "WARNING  [secretgen-controller > cleanup] Executed: Missing playbook (Remove from test_sequence to suppress)",
                                "INFO     [secretgen-controller > destroy] Executing",
                                "WARNING  [secretgen-controller > destroy] Skipping, '--destroy=never' requested.",
                                "INFO     [secretgen-controller > destroy] Executed: Successful",
                                "WARNING  Molecule executed 1 scenario (1 missing files)"
                            ],
                            "zuul_log_id": "0242ac17-0010-a65f-2662-000000000006-1-controller"
                        }
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:12.207387Z",
                            "start": "2026-05-18T10:38:33.956276Z"
                        },
                        "id": "0242ac17-0010-a65f-2662-000000000006",
                        "name": "Run Molecule scenario"
                    }
                }
            ]
        }
    ],
    "stats": {
        "controller": {
            "changed": 3,
            "failures": 0,
            "ignored": 0,
            "ok": 3,
            "rescued": 0,
            "skipped": 0,
            "unreachable": 0
        }
    },
    "trusted": false
},
{
    "branch": "main",
    "index": "0",
    "phase": "post",
    "playbook": "github.com/vexxhost/zuul-config/playbooks/base/post.yaml",
    "plays": [
        {
            "play": {
                "duration": {
                    "end": "2026-05-18T10:42:16.135736Z",
                    "start": "2026-05-18T10:42:12.935148Z"
                },
                "id": "0242ac17-0010-e0fe-f60a-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-e0fe-f60a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:12.991198Z",
                            "start": "2026-05-18T10:42:12.946477Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-000000000008",
                        "name": "Set log path for multiple nodes"
                    }
                },
                {
                    "hosts": {
                        "controller": {
                            "action": "set_fact",
                            "ansible_facts": {
                                "log_path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs"
                            },
                            "changed": false
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e0fe-f60a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:13.036757Z",
                            "start": "2026-05-18T10:42:13.001564Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-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/b883bf7f07234ee7b63d219b27e6f502/work/logs"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/logs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/artifacts",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/artifacts",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/artifacts"
                                },
                                {
                                    "ansible_loop_var": "zj_output_dir",
                                    "changed": true,
                                    "diff": {
                                        "after": {
                                            "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/docs",
                                            "state": "directory"
                                        },
                                        "before": {
                                            "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/docs",
                                    "size": 4096,
                                    "state": "directory",
                                    "uid": 0,
                                    "zj_output_dir": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/docs"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e0fe-f60a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:13.873384Z",
                            "start": "2026-05-18T10:42:13.041660Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-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.248:/home/zuul/zuul-output/logs/ /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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.248:/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/b883bf7f07234ee7b63d219b27e6f502/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.248:/home/zuul/zuul-output/artifacts/ /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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.248:/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/b883bf7f07234ee7b63d219b27e6f502/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.248:/home/zuul/zuul-output/docs/ /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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.248:/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/b883bf7f07234ee7b63d219b27e6f502/work/docs",
                                        "src": "docs"
                                    }
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e0fe-f60a-000000000006",
                        "name": "fetch-output",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/fetch-output"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:15.484623Z",
                            "start": "2026-05-18T10:42:13.880791Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/artifacts/* /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs/artifacts\nfi\n",
                                    "delta": "0:00:00.008623",
                                    "end": "2026-05-18 10:42:15.871535",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/artifacts/* /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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-05-18 10:42:15.862912",
                                    "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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/docs/* /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/work/logs/docs\nfi\n",
                                    "delta": "0:00:00.006781",
                                    "end": "2026-05-18 10:42:16.089307",
                                    "failed": false,
                                    "invocation": {
                                        "module_args": {
                                            "_raw_params": "if [ -n \"$(find /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/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/b883bf7f07234ee7b63d219b27e6f502/work/docs/* /var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/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-05-18 10:42:16.082526",
                                    "stderr": "",
                                    "stderr_lines": [],
                                    "stdout": "",
                                    "stdout_lines": [],
                                    "zj_item": "docs",
                                    "zuul_log_id": "in-loop-ignore"
                                }
                            ]
                        }
                    },
                    "role": {
                        "id": "0242ac17-0010-e0fe-f60a-00000000000f",
                        "name": "merge-output-to-logs",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/merge-output-to-logs"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:16.135736Z",
                            "start": "2026-05-18T10:42:15.498125Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-000000000011",
                        "name": "Move artifacts and docs to logs dir"
                    }
                }
            ]
        },
        {
            "play": {
                "duration": {
                    "end": "2026-05-18T10:42:16.634531Z",
                    "start": "2026-05-18T10:42:16.146195Z"
                },
                "id": "0242ac17-0010-e0fe-f60a-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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCeZ2wpGMp8lheweRtd0ui5mBpnzZXiK5fmvtf1cqgdUQFyTdJkuw9R1TqCitdK3y50lEuMTzrn69c6VO5YSBdbkXahA0iX5NScSvCyuCCnI4zSVQE23kEdj50RwLv9hgvpcikZuwn5tqLX/s1JTDV5CVQ32l1odx0qLmhWqQtEgRcI90WisTTvIxLCbwPAMzRgG0BEtoljkc0FKSDHjbawYlYjcJ2nqkcpbFgsCOfNLshmWNeDNOm+j+FWgJeToxKkDM19Uy07YdAVW2i7isKGb++QbZYWLUvDexQo2ZCyW8DgUGwKJE0TzWbKtMUpJOHVJsT9XIb4s/CzV6LhtC6ec3Ghda7BXUsclUvvuS+WgX08IYBaVr/v/FBN5eU+aVlDrfl1D9HMSUPzAfPmTDswHHl2AbYwdaLyD7CtF7JAL8Gw/Yn1STekGgsqUOIWHQdkh4FST2JgFt+p2WWN1hysCFk3WJYhJ3TGUDJ55Q/1gO7hdzPzrvMFAOJAme/7IAk= 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 AAAAB3NzaC1yc2EAAAADAQABAAABgQCeZ2wpGMp8lheweRtd0ui5mBpnzZXiK5fmvtf1cqgdUQFyTdJkuw9R1TqCitdK3y50lEuMTzrn69c6VO5YSBdbkXahA0iX5NScSvCyuCCnI4zSVQE23kEdj50RwLv9hgvpcikZuwn5tqLX/s1JTDV5CVQ32l1odx0qLmhWqQtEgRcI90WisTTvIxLCbwPAMzRgG0BEtoljkc0FKSDHjbawYlYjcJ2nqkcpbFgsCOfNLshmWNeDNOm+j+FWgJeToxKkDM19Uy07YdAVW2i7isKGb++QbZYWLUvDexQo2ZCyW8DgUGwKJE0TzWbKtMUpJOHVJsT9XIb4s/CzV6LhtC6ec3Ghda7BXUsclUvvuS+WgX08IYBaVr/v/FBN5eU+aVlDrfl1D9HMSUPzAfPmTDswHHl2AbYwdaLyD7CtF7JAL8Gw/Yn1STekGgsqUOIWHQdkh4FST2JgFt+p2WWN1hysCFk3WJYhJ3TGUDJ55Q/1gO7hdzPzrvMFAOJAme/7IAk= 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-e0fe-f60a-000000000016",
                        "name": "remove-build-sshkey",
                        "path": "/var/lib/zuul/builds/b883bf7f07234ee7b63d219b27e6f502/trusted/project_1/opendev.org/zuul/zuul-jobs/roles/remove-build-sshkey"
                    },
                    "task": {
                        "duration": {
                            "end": "2026-05-18T10:42:16.634531Z",
                            "start": "2026-05-18T10:42:16.153450Z"
                        },
                        "id": "0242ac17-0010-e0fe-f60a-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
}
]
